Страница 38 из 45
Сообщение WM_KEYUP Сообщение WM_KEYUP посылается окну с фокусом клавиатуры тогда, когда отпущена несистемная клавиша. Несистемная клавиша - это клавиша, которая нажата, когда клавиша ALT не нажата или клавиша клавиатуры, которая нажимается тогда, когда окно имеет фокус клавиатуры. Синтаксис WM_KEYUP nVirtKey = (int) wParam;// код виртуальной клавиши lKeyData = lParam;// данные на клавишу Параметры nVirtKey Значение wParam. Определяет код виртуальной клавиши для несистемной клавиши. lKeyData Значение 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 в цифровой клавиатуре. Другие клавиатуры могут поддерживать бит дополнительной клавиши в параметре lKeyData. Смотри также: DefWindowProc, WM_KEYDOWN, WM_SYSCOMMAND Размещение и совместимость WM_KEYUP Windows NTДа Win95Да Win32sДа Импортируемая библиотека- Заголовочный файлwinuser.h UnicodeНет Замечания по платформеНе имеется
|