> ## Documentation Index
> Fetch the complete documentation index at: https://devdocs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# XINPUT_KEYSTROKE

> XINPUT_KEYSTROKE

# XINPUT\_KEYSTROKE

Describe los datos de pulsación de tecla devueltos por la función XInputGetKeystroke.

<a id="syntaxSection" />

## Sintaxis

```cpp theme={null}
typedef struct XINPUT_KEYSTROKE {  
    WORD VirtualKey;  
    WCHAR Unicode;  
    WORD Flags;  
    BYTE UserIndex;  
    BYTE HidCode;  
} XINPUT_KEYSTROKE  
```

<a id="membersSection" />

### Miembros

*VirtualKey*\
Tipo: WORD

Código de tecla virtual de la tecla, el botón o el movimiento de palanca.

*Unicode*\
Tipo: WCHAR

Este miembro no se usa y su valor es cero.

*Flags*\
Tipo: WORD

Marcas que indican el estado del teclado en el momento del evento de entrada. Este miembro puede ser cualquier combinación de las marcas siguientes:

| Valor                      | Descripción                                   |
| -------------------------- | --------------------------------------------- |
| XINPUT\_KEYSTROKE\_KEYDOWN | Se presionó la tecla.                         |
| XINPUT\_KEYSTROKE\_KEYUP   | Se soltó la tecla.                            |
| XINPUT\_KEYSTROKE\_REPEAT  | Repetición de una tecla mantenida presionada. |

*UserIndex*\
Tipo: BYTE

Índice del jugador asociado a los auriculares; un valor en el intervalo de 0 a `XUSER_MAX_COUNT - 1`.

*HidCode*\
Tipo: BYTE

Código de dispositivo de interfaz humana (HID) que corresponde a la entrada. Si no hay un código HID correspondiente, este valor es cero.

<a id="remarksSection" />

## Comentarios

Esta estructura la usa la función [XInputGetKeystroke](/reference/input/xinputongameinput/functions/xinputgetkeystroke).

Es posible que dispositivos futuros devuelvan códigos HID y valores de teclas virtuales que no se admiten en los dispositivos actuales y que no están definidos en este momento. Las aplicaciones deben ignorar estos valores inesperados.

Un código de tecla virtual es un valor de byte que representa una tecla física concreta del teclado, no el carácter o los caracteres (posiblemente ninguno) a los que la tecla se puede asignar según el estado del teclado. El estado del teclado en el momento en que se presiona una tecla virtual modifica el carácter notificado. Por ejemplo, `VK_4` podría representar "4" o "\$", según el estado de la tecla Mayús.

Un evento de teclado notificado incluye la tecla virtual que provocó el evento, si la tecla se presionó o se soltó (o si se está repitiendo) y el estado del teclado en el momento del evento. El estado del teclado indica si alguna tecla Ctrl, Alt o Mayús está presionada.

Los códigos de tecla virtual válidos (VK\_xxx) se definen en XInput.h. Además de los códigos que indican pulsaciones de teclas, los códigos siguientes indican entrada del mando:

| Valor                      | Descripción                               |
| -------------------------- | ----------------------------------------- |
| VK\_PAD\_A                 | Botón **A**                               |
| VK\_PAD\_B                 | Botón **B**                               |
| VK\_PAD\_X                 | Botón **X**                               |
| VK\_PAD\_Y                 | Botón **Y**                               |
| VK\_PAD\_RSHOULDER         | Botón superior derecho                    |
| VK\_PAD\_LSHOULDER         | Botón superior izquierdo                  |
| VK\_PAD\_LTRIGGER          | Gatillo izquierdo                         |
| VK\_PAD\_RTRIGGER          | Gatillo derecho                           |
| VK\_PAD\_DPAD\_UP          | Cruceta direccional arriba                |
| VK\_PAD\_DPAD\_DOWN        | Cruceta direccional abajo                 |
| VK\_PAD\_DPAD\_LEFT        | Cruceta direccional izquierda             |
| VK\_PAD\_DPAD\_RIGHT       | Cruceta direccional derecha               |
| VK\_PAD\_START             | Botón Start                               |
| VK\_PAD\_BACK              | Botón Back                                |
| VK\_PAD\_LTHUMB\_PRESS     | Clic de la palanca izquierda              |
| VK\_PAD\_RTHUMB\_PRESS     | Clic de la palanca derecha                |
| VK\_PAD\_LTHUMB\_UP        | Palanca izquierda arriba                  |
| VK\_PAD\_LTHUMB\_DOWN      | Palanca izquierda abajo                   |
| VK\_PAD\_LTHUMB\_RIGHT     | Palanca izquierda a la derecha            |
| VK\_PAD\_LTHUMB\_LEFT      | Palanca izquierda a la izquierda          |
| VK\_PAD\_LTHUMB\_UPLEFT    | Palanca izquierda arriba y a la izquierda |
| VK\_PAD\_LTHUMB\_UPRIGHT   | Palanca izquierda arriba y a la derecha   |
| VK\_PAD\_LTHUMB\_DOWNRIGHT | Palanca izquierda abajo y a la derecha    |
| VK\_PAD\_LTHUMB\_DOWNLEFT  | Palanca izquierda abajo y a la izquierda  |
| VK\_PAD\_RTHUMB\_UP        | Palanca derecha arriba                    |
| VK\_PAD\_RTHUMB\_DOWN      | Palanca derecha abajo                     |
| VK\_PAD\_RTHUMB\_RIGHT     | Palanca derecha a la derecha              |
| VK\_PAD\_RTHUMB\_LEFT      | Palanca derecha a la izquierda            |
| VK\_PAD\_RTHUMB\_UPLEFT    | Palanca derecha arriba y a la izquierda   |
| VK\_PAD\_RTHUMB\_UPRIGHT   | Palanca derecha arriba y a la derecha     |
| VK\_PAD\_RTHUMB\_DOWNRIGHT | Palanca derecha abajo y a la derecha      |
| VK\_PAD\_RTHUMB\_DOWNLEFT  | Palanca derecha abajo y a la izquierda    |

Para obtener más información, consulte [El contenedor XInputOnGameInput](/build/core-features/common/input/porting/input-porting-xinput#xinputWrapperSection).

<a id="requirementsSection" />

## Requisitos

**Encabezado:** XInputOnGameInput.h

**Plataformas compatibles:** consolas de la familia XBOX One y consolas XBOX Series

<a id="seealsoSection" />

## Consulte también

[Portabilidad de XInput a GameInput](/build/core-features/common/input/porting/input-porting-xinput)\
[XInputOnGameInput](/reference/input/xinputongameinput/xinputongameinput_members)


## Related topics

- [XInputGetKeystroke](/es/reference/input/xinputongameinput/functions/xinputgetkeystroke.md)
- [XInputOnGameInput](/es/reference/input/xinputongameinput/xinputongameinput_members.md)
- [Portabilidad de XInput a GameInput](/es/build/core-features/common/input/porting/input-porting-xinput.md)
- [XINPUT_GAMEPAD](/es/reference/input/xinputongameinput/structs/xinput_gamepad.md)
- [XINPUT_CAPABILITIES](/es/reference/input/xinputongameinput/structs/xinput_capabilities.md)
