Funzione VkKeyScanExA (winuser.h)
Converte un carattere nel codice della chiave virtuale corrispondente e nello stato di spostamento. La funzione converte il carattere usando il linguaggio di input e il layout della tastiera fisica identificati dall'identificatore delle impostazioni locali di input.
Sintassi
SHORT VkKeyScanExA(
[in] CHAR ch,
[in] HKL dwhkl
);
Parametri
[in] ch
Tipo: TCHAR
Carattere da tradurre in codice chiave virtuale.
[in] dwhkl
Tipo: HKL
Identificatore delle impostazioni locali di input usato per tradurre il carattere. Questo parametro può essere qualsiasi identificatore delle impostazioni locali di input restituito in precedenza dalla funzione LoadKeyboardLayout .
Valore restituito
Tipo: SHORT
Se la funzione ha esito positivo, il byte a basso ordine del valore restituito contiene il codice chiave virtuale e il byte ad ordine elevato contiene lo stato di spostamento, che può essere una combinazione dei bit di flag seguenti.
Valore restituito | Descrizione |
---|---|
|
Il tasto MAIUSC viene premuto. |
|
Il tasto CTRL viene premuto. |
|
Il tasto ALT viene premuto. |
|
Il tasto Hankaku viene premuto |
|
Riservato (definito dal driver di layout della tastiera). |
|
Riservato (definito dal driver di layout della tastiera). |
Se la funzione non trova alcuna chiave che converte nel codice di carattere passato, sia i byte a basso ordine che i byte ad ordine elevato contengono –1.
Commenti
L'identificatore delle impostazioni locali di input è un concetto più ampio di un layout della tastiera, poiché può anche includere un convertitore voce-a-testo, un metodo di input Editor (IME) o qualsiasi altra forma di input.
Per i layout della tastiera che usano il tasto ALT a destra come tasto maiuscole (ad esempio, il layout della tastiera francese), lo stato di spostamento è rappresentato dal valore 6, perché il tasto ALT a destra viene convertito internamente in CTRL+ALT.
Le traduzioni per il tastierino numerico (VK_NUMPAD0 tramite VK_DIVIDE) vengono ignorate. Questa funzione è destinata a tradurre i caratteri in tasti solo dalla sezione della tastiera principale. Ad esempio, il carattere "7" viene tradotto in VK_7, non VK_NUMPAD7.
VkKeyScanEx viene usato dalle applicazioni che inviano caratteri usando i messaggi di WM_KEYUP e WM_KEYDOWN .
Nota
L'intestazione winuser.h definisce VkKeyScanEx come alias che seleziona automaticamente la versione ANSI o Unicode di questa funzione in base alla definizione della costante preprocessore UNICODE. La combinazione dell'utilizzo dell'alias di codifica neutrale con il codice che non è neutrale dalla codifica può causare errori di corrispondenza che causano errori di compilazione o runtime. Per altre informazioni, vedere Convenzioni per i prototipi di funzione.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows 2000 Professional [solo app desktop] |
Server minimo supportato | Windows 2000 Server [solo app desktop] |
Piattaforma di destinazione | Windows |
Intestazione | winuser.h (include Windows.h) |
Libreria | User32.lib |
DLL | User32.dll |
Vedi anche
Commenti e suggerimenti
https://aka.ms/ContentUserFeedback.
Presto disponibile: Nel corso del 2024 verranno gradualmente disattivati i problemi di GitHub come meccanismo di feedback per il contenuto e ciò verrà sostituito con un nuovo sistema di feedback. Per altre informazioni, vedereInvia e visualizza il feedback per