Ескертпе
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Жүйеге кіруді немесе каталогтарды өзгертуді байқап көруге болады.
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Каталогтарды өзгертуді байқап көруге болады.
Отображается в окне с фокусом клавиатуры, когда пользователь отпускает клавишу, нажатую во время удерживаемой клавиши ALT. Это также происходит, если в настоящее время ни в окне нет фокуса клавиатуры; в этом случае сообщение WM_SYSKEYUP отправляется в активное окно. Окно, получающее сообщение, может различать эти два контекста, проверяя код контекста в параметре lParam .
Окно получает это сообщение через функцию WindowProc .
#define WM_SYSKEYUP 0x0105
Параметры
-
wParam
-
Код виртуального ключа освобождаемого ключа. См . раздел Коды виртуальных ключей.
-
lParam
-
Число повторов, код сканирования, флаг расширенного ключа, код контекста, предыдущий флаг "ключ—состояние" и флаг состояния перехода, как показано в следующей таблице.
Bits Значение 0—15 Число повторов для текущего сообщения. Значение — это количество автоматических попыток нажатия клавиши в результате того, что пользователь удерживает клавишу. Число повторов всегда равно 1 для WM_SYSKEYUP сообщения. 16—23 Код сканирования. Значение зависит от изготовителя оборудования. 24 Указывает, является ли клавиша расширенной, например клавишами ALT и CTRL справа, которые отображаются на клавиатуре с расширенными 101- или 102-клавишными клавишами. Значение равно 1, если это расширенный ключ; в противном случае значение равно нулю. 25-28 Защищены; не использовать. 29 Код контекста. Значение равно 1, если клавиша ALT не работает во время ее освобождения; Значение равно нулю, если WM_SYSKEYUP сообщение будет отправлено в активное окно, так как ни в окне нет фокуса клавиатуры. 30 Предыдущее состояние ключа. Значение всегда равно 1 для WM_SYSKEYUP сообщения. 31 Состояние перехода. Значение всегда равно 1 для WM_SYSKEYUP сообщения. Дополнительные сведения см. в разделе Флаги сообщения нажатия клавиш.
Возвращаемое значение
Приложение должно возвращать ноль, если оно обрабатывает это сообщение.
Комментарии
Функция DefWindowProc отправляет WM_SYSCOMMAND сообщение в окно верхнего уровня, если клавиша F10 или клавиша ALT была освобождена. Параметр wParam сообщения имеет значение SC_KEYMENU.
Если код контекста равен нулю, сообщение можно передать в функцию TranslateAccelerator , которая будет обрабатывать его так, как если бы это было обычное ключевое сообщение, а не сообщение с символьным ключом. Это позволяет использовать клавиши с активным окном, даже если активное окно не имеет фокуса клавиатуры.
Для расширенных 101- и 102-клавишных клавиатур расширенные клавиши — это правые клавиши ALT и CTRL в main разделе клавиатуры; клавиши INS, DEL, HOME, END, PAGE UP, PAGE DOWN и клавиши со стрелками в кластерах слева от цифровой клавиатуры; а также клавиши деления (/) и ВВОД на цифровой клавиатуре. Другие клавиатуры могут поддерживать бит расширенной клавиши в параметре lParam .
Для не-США улучшенная клавиатура с 102 клавишами, правая клавиша ALT обрабатывается как клавиши CTRL+ALT. В следующей таблице показана последовательность сообщений, которые возникают, когда пользователь нажимает и отпускает эту клавишу.
| Сообщение | Код виртуального ключа |
|---|---|
| WM_KEYDOWN | VK_CONTROL |
| WM_KEYDOWN | VK_MENU |
| WM_KEYUP | VK_CONTROL |
| WM_SYSKEYUP | VK_MENU |
Требования
| Требование | Значение |
|---|---|
| Минимальная версия клиента |
Windows 2000 Professional [только классические приложения] |
| Минимальная версия сервера |
Windows 2000 Server [только классические приложения] |
| Заголовок |
|