Есть ли способ заметить отпускание кнопки быстрого доступа, зарегистрированной с RegisterHotKey
?
Я получаю сообщение WM_HOTKEY
каждый раз, когда нажимаю горячую клавишу, но мне нужно знать, когда она была отпущена
Есть ли способ заметить отпускание кнопки быстрого доступа, зарегистрированной с RegisterHotKey
?
Я получаю сообщение WM_HOTKEY
каждый раз, когда нажимаю горячую клавишу, но мне нужно знать, когда она была отпущена
Для этого конкретного действия нет специального уведомления. Вам нужно будет написать DLL, которая реализует глобальный перехват клавиатуры через SetWindowsHookEx()
, тогда вы будете получать отдельные уведомления о нажатии клавиш вверх / вниз и можете сопоставлять их с вашими WM_HOTKEY
уведомлениями по мере необходимости.
Используйте RegisterHotkey
, чтобы определить, что клавиша выходит из строя, затем используйте опрос с GetAsyncKeyState
, пока клавиша не перестанет быть нажатой. Это позволяет избежать сложности SetWindowsHookEx
, и опрос обычно приемлем, поскольку он выполняется только при удерживании горячей клавиши.