Funzione GetKeyState (winuser.h)
Recupera lo stato della chiave virtuale specificata. Lo stato specifica se il tasto è attivo, inattivo o disattivato, alternando ogni volta che viene premuto il tasto.
SHORT GetKeyState(
[in] int nVirtKey
);
[in] nVirtKey
Tipo: int
Una chiave virtuale. Se la chiave virtuale desiderata è una lettera o una cifra (da A a Z, da a z o da 0 a 9), nVirtKey deve essere impostato sul valore ASCII di tale carattere. Per altre chiavi, deve essere un codice di chiave virtuale.
Se viene usato un layout di tastiera non inglese, i tasti virtuali con valori compresi nell'intervallo compreso tra ASCII A e Z e da 0 a 9 vengono usati per specificare la maggior parte dei tasti di carattere. Ad esempio, per il layout della tastiera tedesca, il tasto virtuale di valore ASCII O (0x4F) fa riferimento al tasto "o", mentre VK_OEM_1 fa riferimento al tasto "o con umlaut".
Tipo: SHORT
Il valore restituito specifica lo stato della chiave virtuale specificata, come indicato di seguito:
- Se il bit di ordine elevato è 1, la chiave è inattiva; in caso contrario, è in alto.
- Se il bit di ordine basso è 1, la chiave viene attivata o disattivata. Una chiave, ad esempio il tasto BLOC MAIUSC, viene attivata o disattivata. La chiave è disattivata e deselezionata se il bit di ordine basso è 0. La luce dell'indicatore di un tasto di attivazione (se presente) sulla tastiera verrà attivata quando il tasto viene attivato o disattivato quando il tasto è disattivato.
Lo stato della chiave restituito da questa funzione cambia quando un thread legge i messaggi chiave dalla coda dei messaggi. Lo stato non riflette lo stato a livello di interrupt associato all'hardware. Usare la funzione GetAsyncKeyState per recuperare tali informazioni.
Un'applicazione chiama GetKeyState in risposta a un messaggio di input da tastiera. Questa funzione recupera lo stato della chiave quando è stato generato il messaggio di input.
Per recuperare le informazioni sullo stato per tutte le chiavi virtuali, usare la funzione GetKeyboardState .
Un'applicazione può usare le costanti del codice della chiave virtualeVK_SHIFT, VK_CONTROL e VK_MENU come valori per il parametro nVirtKey . In questo modo viene visualizzato lo stato dei tasti MAIUSC, CTRL o ALT senza distinguere tra sinistra e destra. Un'applicazione può anche usare le costanti di codice della chiave virtuale seguenti come valori per nVirtKey per distinguere tra le istanze di sinistra e destra di tali chiavi:
VK_LSHIFTVK_RSHIFTVK_LCONTROLVK_RCONTROLVK_LMENUVK_RMENU Queste costanti distinzione sinistra e destra sono disponibili per un'applicazione solo tramite le funzioni GetKeyboardState, SetKeyboardState, GetAsyncKeyState, GetKeyState e MapVirtualKeyKey.
Per un esempio, vedere Visualizzazione dell'input da tastiera.
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 |