Partilhar via


estrutura KEY_EVENT_RECORD

Descreve um evento de entrada de teclado em uma estrutura de INPUT_RECORD de console.

Sintaxe

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

Membros

bKeyDown
Se a tecla for pressionada, este membro é TRUE. Caso contrário, este membro é FALSO (a chave é liberada).

wRepeatCount
A contagem de repetições, que indica que uma chave está sendo pressionada. Por exemplo, quando uma chave é pressionada, você pode obter cinco eventos com esse membro igual a 1, um evento com esse membro igual a 5 ou vários eventos com esse membro maior ou igual a 1.

wVirtualKeyCode
Um código de chave virtual que identifica a chave fornecida de forma independente do dispositivo.

wVirtualScanCode
O código de verificação virtual da chave fornecida que representa o valor dependente do dispositivo gerado pelo hardware do teclado.

uChar
Uma união dos seguintes membros:

UnicodeChar
Caractere Unicode traduzido.

AsciiChar
Caractere ASCII traduzido.

dwControlKeyState
O estado das chaves de controle. Este membro pode ser um ou mais dos seguintes valores.

Valor Significado
CAPSLOCK_ON 0x0080 A luz CAPS LOCK está acesa.
ENHANCED_KEY 0x0100 A chave é melhorada. Ver observações.
LEFT_ALT_PRESSED 0x0002 A tecla ALT esquerda é pressionada.
LEFT_CTRL_PRESSED 0x0008 A tecla CTRL esquerda é pressionada.
NUMLOCK_ON 0x0020 A luz NUM LOCK está acesa.
RIGHT_ALT_PRESSED 0x0001 A tecla ALT direita é pressionada.
RIGHT_CTRL_PRESSED 0x0004 A tecla CTRL direita é pressionada.
SCROLLLOCK_ON 0x0040 A luz SCROLL LOCK está acesa.
SHIFT_PRESSED 0x0010 A tecla SHIFT é pressionada.

Observações

As teclas aprimoradas para os teclados IBM® de 101 e 102 teclas são as teclas INS, DEL, HOME, END, PAGE UP, PAGE DOWN e direction nos clusters à esquerda do teclado; e as teclas divide (/) e ENTER no teclado.

Os eventos de entrada do teclado são gerados quando qualquer tecla, incluindo teclas de controle, é pressionada ou liberada. No entanto, a tecla ALT quando pressionada e liberada sem combinar com outro caractere, tem um significado especial para o sistema e não é passada para o aplicativo. Além disso, a combinação de teclas CTRL+C não é passada se o identificador de entrada estiver no modo processado (ENABLE_PROCESSED_INPUT).

Exemplos

Para obter um exemplo, consulte Lendo eventos de buffer de entrada.

Requerimentos

   
Cliente mínimo suportado Windows 2000 Professional [apenas aplicações de ambiente de trabalho]
Servidor mínimo suportado Windows 2000 Server [apenas aplicações de ambiente de trabalho]
Cabeçalho WinConTypes.h (via WinCon.h, incluir Windows.h)

Ver também

PeekConsoleInput

ReadConsoleInput

WriteConsoleInput

INPUT_RECORD