Сообщение WM_KEYUP пересылается окну с фокусом клавиатуры тогда, когда отпущена несистемная клавиша. Несистемная клавиша (nonsystem key) - это клавиша, которая нажата, когда клавиша
ALT не нажата или клавиша клавиатуры, которая нажимается тогда, когда окно имеет фокус клавиатуры.Синтаксис
WM_KEYUP WPARAM wParam LPARAM lParam; |
Параметры
wParam
Определяет код виртуальной клавиши для несистемной клавиши.lParam
Определяет счет повторений, скэн-код, флажок дополнительной клавиши, контекстный код, флажок предыдущего состояния клавиши и флажок переходного состояния, как показано в следующей таблице:
Значение |
Описание |
0-15 |
Определяет счет повторений текущего сообщения. Значение равно числу автоповтора нажатия клавиши в результате того, что пользователь удерживает клавишу нажатой. Для сообщения WM_KEYUP счет повторений равен всегда единице. |
16-23 |
Определяет скэн-код. Значение зависит от фирмы - изготовителя комплектного оборудования ( OEM). |
24 |
Определяет, является ли клавиша дополнительной клавишей, типа правосторонних клавиш ALT и CTRL, которые появляются на усовершенствованной 101- или 102-клавишной клавиатуре. Значение равно 1, если это дополнительная клавиша; иначе, оно равно 0. |
25-28 |
Зарезервировано; не используется. |
29 |
Определяет контекстный код. Для сообщения WM_KEYUP это значение всегда 0. |
30 |
Определяет предыдущее состояние клавиши. Для сообщения WM_KEYUP это значение всегда 1. |
31 |
Определяет переходное состояние. Для сообщения WM_KEYUP это значение всегда 1. |
Возвращаемые значения
Прикладная программа должна возвратить нуль, если она обрабатывает это сообщение.
Замечания
Если клавиша F10 или ALT была отпущена, функция DefWindowProc отправляет сообщение WM_SYSCOMMAND окну верхнего уровня. Параметр wParam сообщения устанавливается в
SC_KEYMENU.Для усовершенствованных 101- и 102-клавишных клавиатур, дополнительными клавишами являются - правая
ALT и правая CTRL в основной части клавиатуры; INS, DEL, HOME, END, PAGE UP, PAGE DOWN и клавиши курсора в группах слева от цифровой клавиатуры; делитель (/) и клавиши ENTER в цифровой клавиатуре. Другие клавиатуры могут поддерживать бит дополнительной клавиши в параметре lParam.Windows 2000/XP: Приложения должны переправлять параметр wParam в функцию TranslateMessage, не изменяя его вообще.
Смотри также
Обзор Ввод данных с клавиатуры, DefWindowProc, TranslateMessage, WM_KEYDOWN, WM_SYSCOMMAND
Размещение и совместимость WM_KEYUP |
|
Windows. NET Server |
Да |
Windows XP |
Да |
Windows 2000 |
Да |
Windows NT |
Да версии 3.1 и выше |
Windows Me |
Да |
Windows 98 |
Да |
Windows 95 |
Да |
Используемая библиотека |
Нет |
Заголовочный файл |
|
- объявлено в |
Winuser.h |
- включено в |
Windows.h |
Unicode |
Нет |
Замечания по платформе |
Не имеется |