UDF > WinAPIEx > System > User Keyboard Input >


_WinAPI_GetKeyState

Obtient l'état de la touche virtuelle spécifiée

#include <WinAPISys.au3>
_WinAPI_GetKeyState ( $vKey )

Paramètre

$vKey Indique une touche virtuelle ($VK_*). Si la touche virtuelle souhaitée est une lettre ou un chiffre (de A à Z, de a à z, ou de 0 à 9).

Valeur de retour

Retourne la valeur qui spécifie l'état de la touche virtuelle spécifiée. Si le bit de poids fort est 1, la touche est enfoncée sinon, elle est relachée. Si le bit de poids faible est 1, la touche est basculée. Une touche, telle que la touche VERR.MAJ est basculée si elle est activée. La clé est off et désactivée si le bit de poids faible est égal à 0.
Le témoin lumineux d'une touche de basculement (s'il existe) sur le clavier s'allume lorsque la touche est activée, et s'éteint lorsque la touche est désactivée.

Remarque

L'état de la touche retourné par cette fonction change lorsqu'un processus lit les messages de touche dans sa file d'attente de messages.
Le statut ne reflète pas l'état du niveau d'interruption associé avec le matériel. Utilisez la fonction _WinAPI_GetAsyncKeyState() pour récupérer cette information.

En relation

_WinAPI_GetAsyncKeyState

Voir aussi

Consultez GetKeyState dans la librairie MSDN.

Exemple

#include <WinAPISys.au3>
#include <WinAPIvkeysConstants.au3>

; Demande à AutoIt de ne pas gérer CapsLock
AutoItSetOption("SendCapslockMode", 0)

Local $aOnOff[2] = ['OFF', 'ON']
ConsoleWrite('Etat CapsLock: ' & $aOnOff[BitAND(_WinAPI_GetKeyState($VK_CAPITAL), 1)] & @CRLF)

; Clignotement du témoin lumineux de la touche CAPSLOCK, s'il existe
for $i = 1 to 10
    If BitAND(_WinAPI_GetKeyState($VK_CAPITAL), 1) = 0 Then
       Send('{CAPSLOCK on}')
    Else
        Send('{CAPSLOCK off}')
    EndIf
    Sleep(200)
Next