Partager via


KEY_EVENT_RECORD, structure

Décrit un événement d'entrée de clavier dans une structure INPUT_RECORD de console.

Syntaxe

typedef struct _KEY_EVENT_RECORD {
  BOOL  bKeyDown;
  WORD  wRepeatCount;
  WORD  wVirtualKeyCode;
  WORD  wVirtualScanCode;
  union {
    WCHAR UnicodeChar;
    CHAR  AsciiChar;
  } uChar;
  DWORD dwControlKeyState;
} KEY_EVENT_RECORD;

Membres

bKeyDown
Si la touche est appuyée, ce membre a la valeur VRAI. Sinon, ce membre a la valeur FAUX (la touche est relâchée).

wRepeatCount
La valeur de répétition, qui indique qu’une touche est maintenue appuyée. Par exemple, lorsqu'une touche est maintenue appuyée, vous pouvez obtenir cinq événements avec ce membre égal à 1, un événement avec ce membre égal à 5, ou plusieurs événements avec ce membre supérieur ou égal à 1.

wVirtualKeyCode
Un code de touche virtuelle qui identifie la touche donnée de manière indépendante de l’appareil.

wVirtualScanCode
Le code de la touche virtuelle de la touche donnée qui représente la valeur dépendante de l’appareil générée par le matériel clavier.

uChar
Une union des membres suivants.

UnicodeChar
Caractère Unicode traduit.

AsciiChar
Caractère ASCII traduit.

dwControlKeyState
L’état des touches de contrôle. Ce membre peut prendre une ou plusieurs des valeurs suivantes.

Valeur Signification
CAPSLOCK_ON 0x0080 L’indicateur Verr. maj est activé.
ENHANCED_KEY 0x0100 La touche est améliorée. Consultez la section Remarques.
LEFT_ALT_PRESSED 0x0002 La touche ALT gauche est enfoncée.
LEFT_CTRL_PRESSED 0x0008 La touche Ctrl gauche est enfoncée.
NUMLOCK_ON 0x0020 L’indicateur Verr. pavé num. est activé.
RIGHT_ALT_PRESSED 0x0001 La touche ALT droite est enfoncée.
RIGHT_CTRL_PRESSED 0x0004 La touche CTRL droite est enfoncée.
SCROLLLOCK_ON 0x0040 L’indicateur Roulette vérrouillée est activée.
SHIFT_PRESSED 0x0010 La touche Maj est enfoncée.

Notes

Les touches améliorées pour les claviers IBM® 101 et 102 sont les touches INS, Suppr, Accueil, Arrêter, Page précédente, Page suivante et les touches de direction dans les groupements à gauche du clavier, ainsi que les touches de division (/) et la touche ENTRÉE dans le clavier.

Les événements d’entrée de clavier sont générés quand une touche, y compris les touches de contrôle, est appuyée ou relâchée. Cependant, la touche ALT, lorsqu'elle est appuyée et relâchée sans être combinée à un autre caractère, a une signification particulière pour le système et n'est pas transmise à l'application. En outre, la combinaison de touches Ctrl+C n’est pas transmise si le descripteur d’entrée est en mode traité (ENABLE_PROCESSED_INPUT).

Exemples

Pour obtenir un exemple, consultez Lecture des événements de mémoire tampon d’entrée.

Spécifications

   
Client minimal pris en charge Windows 2000 Professionnel [applications de bureau uniquement]
Serveur minimal pris en charge Windows 2000 Server [applications de bureau uniquement]
En-tête WinConTypes.h (via WinCon.h, inclure Windows.h)

Voir aussi

PeekConsoleInput

ReadConsoleInput

WriteConsoleInput

INPUT_RECORD