Compartir a través de


Estructura de KEY_EVENT_RECORD

Describe un evento de entrada de teclado en una estructura INPUT_RECORD de la consola.

Sintaxis

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

Miembros

bKeyDown
Si se presiona la tecla, este miembro es TRUE. De lo contrario, es FALSE (si se suelta la tecla).

wRepeatCount
Número de repeticiones que indica que se mantiene presionada una tecla. Por ejemplo, cuando se mantiene presionada una tecla, puede obtener cinco eventos con este miembro igual a 1, un evento con este miembro igual a 5 o varios eventos con este miembro igual o mayor que 1.

wVirtualKeyCode
Código de tecla virtual que identifica la tecla específica independientemente del dispositivo.

wVirtualScanCode
Código de tecla virtual de la tecla específica que representa el valor dependiente del dispositivo que genera el hardware del teclado.

uChar
Unión de los siguientes miembros.

UnicodeChar
Carácter Unicode traducido.

AsciiChar
Carácter ASCII traducido.

dwControlKeyState
Estado de las teclas de control. Este miembro puede tener uno o varios de los siguientes valores.

Valor Significado
CAPSLOCK_ON 0x0080 La luz de BLOQ NUM está encendida.
ENHANCED_KEY 0x0100 La tecla se ha mejorado. Consulte los comentarios.
LEFT_ALT_PRESSED 0x0002 Se presiona la tecla ALT de la izquierda.
LEFT_CTRL_PRESSED 0x0008 Se presiona la tecla CTRL de la izquierda.
NUMLOCK_ON 0x0020 La luz de BLOQ NUM está encendida.
RIGHT_ALT_PRESSED 0x0001 Se presiona la tecla ALT de la derecha.
RIGHT_CTRL_PRESSED 0x0004 Se presiona la tecla CTRL de la derecha.
SCROLLLOCK_ON 0x0040 La luz de BLOQ DESPL está encendida.
SHIFT_PRESSED 0x0010 Se presiona la tecla MAYÚS.

Comentarios

Las teclas mejoradas de los teclados IBM® de 101 y 102 teclas son INS, Supr, Inicio, Fin, Página anterior, Página siguiente y las teclas de dirección de los clústeres de la izquierda del teclado, así como las teclas dividir (/) y ENTRAR del teclado.

Los eventos de entrada de teclado se generan cuando se presiona o se suelta cualquier tecla, incluidas las de control. Sin embargo, cuando se presiona y se suelta la tecla ALT sin combinarla con otro carácter, tiene un significado especial para el sistema y no se pasa a la aplicación. Además, la combinación de teclas CTRL+C no se pasa si el identificador de entrada está en modo procesado (ENABLE_PROCESSED_INPUT).

Ejemplos

Para un ejemplo, vea Lectura de eventos de búfer de entrada.

Requisitos

   
Cliente mínimo compatible Windows 2000 Professional [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows 2000 Server [solo aplicaciones de escritorio]
Encabezado WinConTypes.h (a través de WinCon.h, incluido Windows.h)

Consulte también

PeekConsoleInput

PeekConsoleInput

WriteConsoleInput

INPUT_RECORD