структура XINPUT_KEYSTROKE (xinput.h)
Указывает данные нажатия клавиши, возвращаемые методом XInputGetKeystroke.
Синтаксис
typedef struct _XINPUT_KEYSTROKE {
WORD VirtualKey;
WCHAR Unicode;
WORD Flags;
BYTE UserIndex;
BYTE HidCode;
} XINPUT_KEYSTROKE, *PXINPUT_KEYSTROKE;
Члены
VirtualKey
Код виртуальной клавиши для перемещения клавиши, кнопки или джойстика. Список допустимых кодов виртуального ключа (VK_xxx) см. в статье XInput.h. Кроме того, см. примечания.
Unicode
Этот элемент не используется, и значение равно нулю.
Flags
Флаги, указывающие состояние клавиатуры во время события ввода. Этот элемент может быть любым сочетанием следующих флагов:
Значение | Описание |
---|---|
XINPUT_KEYSTROKE_KEYDOWN | Клавиша была нажата. |
XINPUT_KEYSTROKE_KEYUP | Ключ был освобожден. |
XINPUT_KEYSTROKE_REPEAT | Повторение удерживаемого ключа. |
UserIndex
Индекс вошедшего игрока, связанного с устройством. Может быть значением в диапазоне от 0 до 3.
HidCode
Код HID, соответствующий входным данным. Если соответствующий код HID отсутствует, это значение равно нулю.
Комментарии
Будущие устройства могут возвращать коды HID и значения виртуальных ключей, которые не поддерживаются на текущих устройствах и в настоящее время не определены. Приложения должны игнорировать эти непредвиденные значения.
Код виртуальной клавиши — это байтовое значение, представляющее определенную физическую клавишу на клавиатуре, а не символ или символы (возможно, нет), с которыми можно сопоставить клавишу на основе состояния клавиатуры. Состояние клавиатуры во время нажатия виртуальной клавиши изменяет сообщаемый символ. Например, VK_4 может представлять "4" или "$" в зависимости от состояния клавиши SHIFT.
Сообщаемое событие клавиатуры включает виртуальную клавишу, которая вызвала событие, то, была ли клавиша нажата или отпущена (или повторяется), а также состояние клавиатуры во время события. Состояние клавиатуры содержит сведения о том, отключены ли какие-либо клавиши CTRL, ALT или SHIFT.
Если событие клавиатуры представляет символ Юникода (например, нажатие клавиши "A"), элемент Юникода будет содержать этот символ. В противном случае Юникод будет содержать нулевое значение.
Допустимые коды виртуального ключа (VK_xxx) определяются в XInput.h. Помимо кодов, указывающих на нажатие клавиш, следующие коды указывают на входные данные контроллера.
Значение | Описание |
---|---|
VK_PAD_A | Кнопка |
VK_PAD_B | Кнопка B |
VK_PAD_X | Кнопка X |
VK_PAD_Y | Кнопка Y |
VK_PAD_RSHOULDER | Кнопка правого плеча |
VK_PAD_LSHOULDER | Кнопка левого плеча |
VK_PAD_LTRIGGER | Левый триггер |
VK_PAD_RTRIGGER | Правый триггер |
VK_PAD_DPAD_UP | Направление вверх |
VK_PAD_DPAD_DOWN | Направленная панель вниз |
VK_PAD_DPAD_LEFT | Направленная панель слева |
VK_PAD_DPAD_RIGHT | Направленная панель справа |
VK_PAD_START | Кнопка "ПУСК" |
VK_PAD_BACK | Кнопка "НАЗАД" |
VK_PAD_LTHUMB_PRESS | Щелчок левого стиком |
VK_PAD_RTHUMB_PRESS | Щелчок правого стиком |
VK_PAD_LTHUMB_UP | Левый стик вверх |
VK_PAD_LTHUMB_DOWN | Левый стик вниз |
VK_PAD_LTHUMB_RIGHT | Левый стик вправо |
VK_PAD_LTHUMB_LEFT | Левый стик слева |
VK_PAD_LTHUMB_UPLEFT | Левый стик вверх и влево |
VK_PAD_LTHUMB_UPRIGHT | Левый стик вверх и вправо |
VK_PAD_LTHUMB_DOWNRIGHT | Левый стик вниз и вправо |
VK_PAD_LTHUMB_DOWNLEFT | Левый стик вниз и влево |
VK_PAD_RTHUMB_UP | Правый аналоговый стик вверх |
VK_PAD_RTHUMB_DOWN | Правый аналоговый стик вниз |
VK_PAD_RTHUMB_RIGHT | Правый аналоговый стик вправо |
VK_PAD_RTHUMB_LEFT | Правый аналоговый стик влево |
VK_PAD_RTHUMB_UPLEFT | Правый стик вверх и влево |
VK_PAD_RTHUMB_UPRIGHT | Правый стик вверх и вправо |
VK_PAD_RTHUMB_DOWNRIGHT | Правый палец вниз и вправо |
VK_PAD_RTHUMB_DOWNLEFT | Правый палец вниз и влево |
Требования
Требование | Значение |
---|---|
Заголовок | xinput.h |