Condividi tramite


Tastiera sullo schermo per i dispositivi diretti

In Windows 10 IoT Core, versione 1809, il componente della tastiera sullo schermo è cambiato in modo significativo e per il meglio! IoT Core usa ora gli stessi componenti della tastiera tocco dell'edizione desktop di Windows.

Nuove funzionalità

La nuova implementazione della tastiera offre i vantaggi seguenti per lo sviluppo di dispositivi diretti:

Pacchetti di funzionalità

Per le immagini di prototipazione (sviluppo), la funzionalità della tastiera sullo schermo è già inclusa, ma sarà necessario abilitarla da Impostazioni dispositivo nel portale dispositivi Di Windows.

Per la commercializzazione, i pacchetti di funzionalità facoltativi seguenti aggiungeranno la tastiera sullo schermo all'immagine:

  • IOT_SHELL_ONSCREEN_KEYBOARD
  • IOT_SHELL_ONSCREEN_KEYBOARD_FOLLOWFOCUS

Suggerimento

Per altre informazioni sulle funzionalità di IoT Core, vedere Elenco funzionalità IoT Core e Guida alla produzione IoT Core.

Layout del linguaggio della tastiera di Windows

Con questa versione, i layout del linguaggio supportati sono stati espansi per includere il set completo di quelli disponibili nell'edizione desktop di Windows. Per consentire agli utenti di selezionare tra layout linguistici diversi, in genere si include l'interfaccia utente di selezione nell'area Impostazioni dell'applicazione. L'API seguente viene fornita per abilitare l'applicazione per impostare la lingua che verrà usata dalla tastiera sullo schermo:

Windows.Globalization.Language.TrySetInputMethodLanguageTag

Un esempio di questa API può essere visualizzato nell'applicazione di esempio IoTCoreDefaultApp nel file LanguageManager.cs .

Supporto per gli ambiti di input

Nelle versioni precedenti è disponibile solo l'ambito di input EmailSmtpAddress. In questa versione è disponibile il set completo di ambiti di input. L'argomento seguente illustra gli ambiti di input e come usarli nelle applicazioni:

Usare l'ambito di input per modificare la tastiera virtuale

Input Method Editor (IME)

Questa versione fornisce un editor di metodi di input, necessario per qualsiasi lingua con più gragrafi rispetto a quelli presenti sulla tastiera, ad esempio cinese, giapponese e coreano.

Campi di input di testo non oscurati

Nelle versioni precedenti, la tastiera tocco potrebbe nascondere il campo di testo incentrato in modo che l'utente non fosse in grado di vedere cosa digitavano. Questa versione risolve questo problema scorrendo automaticamente il campo di testo nella visualizzazione in modo che non sia più oscurato dalla tastiera tocco.

Modalità dettatura

Quando la lingua di input è impostata sulla lingua del sistema operativo, ovvero l'impostazione predefinita, è disponibile la funzionalità di input di riconoscimento vocale. Per visualizzare il pulsante di dettatura nella tastiera, vedere la sezione seguente sulla configurazione dell'interfaccia utente.

Configurazione dell'interfaccia utente

La tastiera sullo schermo offre diverse opzioni configurabili per l'interfaccia utente. Questi sono configurati tramite il Registro di sistema. Durante lo sviluppo, è possibile usare PowerShell o Secure Shell (SSH). Per la creazione di un'immagine OEM, il meccanismo preferito per l'impostazione dei valori del Registro di sistema è il OEMInput.xml file illustrato di seguito:

Personalizzazioni di runtime

Nota

La maggior parte delle impostazioni del Registro di sistema documentate qui avrà effetto mentre la tastiera sullo schermo è visibile. Ciò consente di provare facilmente combinazioni diverse di valori delle impostazioni, visualizzando immediatamente le modifiche risultanti in tempo reale. Se un'impostazione non ha effetto immediatamente, sarà necessario riavviare il dispositivo per visualizzare le modifiche apportate all'interfaccia utente della tastiera.

Altezza della tastiera

Per impostazione predefinita, la tastiera tocco userà il 45% inferiore dell'altezza dello schermo. Questo può apparire troppo grande o piccolo sul dispositivo, a seconda delle dimensioni e della risoluzione. È possibile regolare l'altezza fino a un massimo di due terzi l'altezza dello schermo. Qualsiasi valore non compreso nell'intervallo verrà bloccato nell'intervallo. Poiché questo valore viene specificato come valore a virgola mobile, consente la precisione a livello di pixel. È sufficiente applicare la formula seguente per calcolare la percentuale:

percentage = (100 * <desired_pixel_height>) / <screen_height>

Ad esempio, per modificare l'altezza su 56,783%, impostare il valore del Registro di sistema seguente:

set OskRootKey=HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\IoTShellExtension\OSK
reg.exe ADD "%OskRootKey%" /v MaxHeightPercentage /t REG_SZ /d "56.783" /f

o da PowerShell:

set OskRootKey "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\IoTShellExtension\OSK"
cd $OskRootKey
Set-ItemProperty -Path . -Name MaxHeightPercentage -Type String -Value 56.783

Nota

Il tipo di valore del Registro di sistema deve essere string (REG_SZ), in modo che i valori frazionari possano essere rappresentati con. un punto decimale. L'uso di DWord (REG_DWORD) non funzionerà, anche per percentuali di numero intero.

Preferenze aggiuntive

Il set rimanente di preferenze è String value nella sottochiave Preferenze:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\IoTShellExtension\OSK\Preferences
Valore del Registro di sistema Valore predefinito Descrizione
AudioFeedback_Disabled "0" "0" abilita il feedback audio del tasto clic sul tasto; "1" lo disabilita.
Dictation_Disabled "1" "0" mostra il pulsante di dettatura (riconoscimento vocale); "1" lo nasconde. (vedere la nota riportata di seguito)
KeyboardModeEnabled_full "0" "0" disabilita la modalità tastiera completa; "1" lo abilita.
KeyboardModeEnabled_narrow "1" "0" disabilita la modalità tastiera stretta; "1" lo abilita.
KeyboardModeEnabled_wide "1" "0" disabilita la modalità tastiera wide; "1" lo abilita.
ModeOrder "wide;narrow;full" Ordine (da sinistra a destra) in cui sono elencate le modalità nel menu a discesa modalità, se abilitato
SettingsMenuKey_Collapsed "0" Nasconde il menu a discesa modalità. Impostare questa opzione su "1" se è abilitata una sola modalità.
Paste_Disabled "0" "0" mostra il pulsante Incolla; "1" lo nasconde. La modifica ha effetto dopo il riavvio.
CloseButton_Disabled "0" "0" mostra il pulsante Chiudi; "1" nasconde il pulsante Chiudi. La modifica ha effetto dopo il riavvio.
EmojiKeyEnabled "0" "0" nasconde il tasto Emoji; "1" lo mostra, consentendo all'utente di immettere caratteri Emoji.

Nota

La modalità dettatura richiede l'installazione di un pacchetto vocale per la lingua di input selezionata, nonché un dispositivo di input audio. Se non è installato un pacchetto di riconoscimento vocale corrispondente, il pulsante di dettatura non verrà visualizzato.

Tutte le immagini includono la lingua di riconoscimento vocale en-US. Altri pacchetti vocali vengono installati come funzionalità facoltative. Per altre informazioni sulle funzionalità IoT, vedere Elenco di funzionalità di IoT Core e Guida alla produzione di IoT Core.

Ad esempio, per abilitare solo wide la modalità tastiera, in PowerShell è possibile eseguire le operazioni seguenti:

set OskRootKey "HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\IoTShellExtension\OSK"
cd $OskRootKey
mkdir Preferences
cd Preferences
Set-ItemProperty . -Name KeyboardModeEnabled_full -Value "0"      # Optional, since the default is "0"
Set-ItemProperty . -Name KeyboardModeEnabled_narrow -Value "0"
Set-ItemProperty . -Name KeyboardModeEnabled_wide -Value "1"      # Optional, since the default is "1"
Set-ItemProperty . -Name SettingsMenuKey_Collapsed -Value "1"