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:
- Intero set di layout della lingua della tastiera di Windows
- Supporto per gli ambiti di input(ad esempio, indirizzo Email, PIN numerico, campo di ricerca e così via)
- Input Method Editor (IME)
- Campi di input di testo non oscurati
- Modalità dettatura
- Selezione delle preferenze dell'interfaccia utente
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:
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"