WM_SYSKEYUP

WM_SYSKEYUP сообщение размещено в окно с фокусом клавиатуры, когда пользователь отпускает клавишу нажатой при нажатой клавишу alt. Это также происходит, когда без окна в настоящее время имеет фокус клавиатуры; в этом случае WM_SYSKEYUP сообщение отправляется в активное окно. Окно, которое получает сообщение можно различить между двух контекстов, проверив код контекста в параметре lKeyData.

WM_SYSKEYUP nVirtKey = wParam (Интернасьонал);    / / виртуальный ключ код lKeyData = lParam;          / / Ключевые данные 
 

Параметры

nVirtKey
Значение wParam. Определяет виртуальный ключ код клавиши были освобождены.
lKeyData
Значение lParam. Определяет число повторений, код сканирования, флаг продлен ключ, код контекста, предыдущий ключ государственный флаг и переход государственный флаг, как показано в следующей таблице.
Значение Описание
0–15 Определяет число повторений для текущего сообщения. Значение — количество раз, которое нажатия кнопки auto повторяется из пользователей, удерживая клавишу. Число повторений всегда является одна для WM_SYSKEYUP сообщения.
оценки Указывает код сканирования. Значение зависит от изготовителя оборудования (OEM).
24 Указывает, является ли ключ расширенного ключа, таких как правой клавиши alt и клавиши ctrl, которые появляются на расширенной 101 - или 102-клавишной клавиатуре. Значение равно 1, если это расширенный ключ; в противном случае это 0.
25-28 Защищены; не следует использовать.
29 Указывает код контекста. Значение равно 1, если нажата клавиша ALT ключ освобожден; Это 0, если WM_SYSKEYDOWN сообщение размещено в активное окно, потому что не окно имеет фокус клавиатуры.
30 Определяет ключевые предыдущее состояние. Значение всегда равно 1 для WM_SYSKEYUP сообщения.
31 Определяет состояние перехода. Значение всегда равно 1 для WM_SYSKEYUP сообщения.

Возвращаемые значения

Приложение должно возвращать нуль, если она обрабатывает это сообщение.

Действия по умолчанию

Функция DefWindowProc посылает сообщение WM_SYSCOMMAND окну верхнего уровня, если клавиша f10 или alt ключ был выпущен. Параметр wParam сообщения имеет значение SC_KEYMENU.

Примечания

Когда код контекста равно нулю, сообщения могут быть переданы в функцию TranslateAccelerator , который будет обрабатывать ее, как будто это обычный ключевые сообщения вместо символов ключа сообщения. Это позволяет сочетания клавиш для использования с активным окном, даже если активное окно не имеет фокуса клавиатуры.

Для расширения 101 и 102-клавиша клавиатуры расширенные ключи являются правой клавиши alt и клавиши ctrl в основной части клавиатуры; ins, del, дома, конец, page up, page down и клавиш со стрелками в кластерах слева от цифровой клавиатуры; и деления (/) и введите ключи в цифровой клавиатуры. Другие клавиши могут поддерживать продлил ключ бит в параметре lKeyData.

Для США-расширение 102-клавишной клавиатуры правая клавиша alt осуществляется как ctrl + клавиша alt. В следующей таблице показаны последовательность сообщений, когда пользователь нажимает и отпускает этот ключ.

Сообщение Виртуальная ключ кодекс
WM_KEYDOWN VK_CONTROL
WM_KEYDOWN VK_MENU
WM_KEYUP VK_CONTROL
WM_SYSKEYUP VK_MENU

QuickInfo

nbsp; Windows &NT: требует версии 3.1 или более поздней версии.
Windows:Требует Windows 95 или более поздней версии.
Windows CE:Требует версии 1.0 или более поздней версии.
Заголовок:Объявленные в winuser.h.

Родственные слова

Обзор ввода клавиатуры ввода сообщений клавиатуры, DefWindowProc, TranslateAccelerator, WM_SYSCOMMAND, WM_SYSKEYDOWN

Index