Поделиться через


сообщение WM_SETHOTKEY

Отправляется в окно, чтобы связать горячий ключ с окном. Когда пользователь нажимает горячий ключ, система активирует окно.

#define WM_SETHOTKEY                    0x0032

Параметры

wParam

Низкий байт слова с низким порядком указывает код виртуального ключа, связанный с окном.

Высокий байт слова с низким порядком может быть одним или несколькими из следующих значений из CommCtrl.h.

Ценность Значение
HOTKEYF_ALT
0x04
КЛАВИША ALT
HOTKEYF_CONTROL
0x02
КЛАВИША CTRL
HOTKEYF_EXT
0x08
Расширенный ключ
HOTKEYF_SHIFT
0x01
КЛАВИША SHIFT

Слово с высоким порядком wParam игнорируется.

Параметр wParam имеет значение NULL , удаляет горячий ключ, связанный с окном.

lParam

Этот параметр не используется.

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

Возвращаемое значение является одним из следующих значений.

Возвращаемое значение Описание
-1
Функция неудачна; горячий ключ недопустим.
0
Функция неудачна; Окно недопустимо.
1
Функция выполнена успешно, и другое окно не имеет того же горячего ключа.
2
Функция выполнена успешно, но другое окно уже имеет тот же горячий ключ.

Замечания

Горячий ключ не может быть связан с дочерним окном.

VK_ESCAPE, VK_SPACE, VK_TAB и VK_PACKET являются недопустимыми горячими ключами.

Когда пользователь нажимает горячий ключ, система создает сообщение WM_SYSCOMMAND с wParam равным SC_HOTKEY и lParam равным дескриптору окна. Если это сообщение передается в DefWindowProc, система принесет последнее активное всплывающее окно окна (если оно существует) или само окно (если всплывающее окно отсутствует) на переднем плане.

Окно может иметь только один горячий ключ. Если в окне уже связан горячий ключ, новый горячий ключ заменяет старый. Если несколько окон имеют один и тот же горячий ключ, окно, которое активируется горячим ключом, является случайным.

Эти горячие ключи не связаны с горячими ключами, заданными RegisterHotKey.

Требования

Требование Ценность
Минимальный поддерживаемый клиент
Windows 2000 Professional [только классические приложения]
Минимальный поддерживаемый сервер
Windows 2000 Server [только классические приложения]
Заголовок
Winuser.h (включая Windows.h)

См. также

Справочные материалы

RegisterHotKey

WM_GETHOTKEY

WM_SYSCOMMAND

Концептуальный

Ввод с клавиатуры