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


Глобальные горячие клавиши

Замечание

Библиотека классов Microsoft Foundation (MFC) продолжает поддерживаться. Однако мы больше не добавляем функции или обновляем документацию.

Глобальный горячий ключ связан с определенным недочерним окном. Он позволяет пользователю активировать окно из любой части системы. Приложение задает глобальный горячий ключ для определенного окна, отправив WM_SETHOTKEY сообщение в это окно. Например, если m_HotKeyCtrl является объектом CHotKeyCtrl, а pMainWnd — это указатель на окно, которое будет активировано при нажатии горячей клавиши, можно использовать следующий код, чтобы связать горячую клавишу, указанную в элементе управления, с окном, на которое указывает pMainWnd.

WORD wKeyAndShift = static_cast<WORD>(m_HotKeyCtrl.GetHotKey());
this->SendMessage(WM_SETHOTKEY, wKeyAndShift);

Когда пользователь нажимает глобальный горячий ключ, указанное окно получает сообщение WM_SYSCOMMAND , указывающее SC_HOTKEY в качестве типа команды. Это сообщение также активирует окно, которое получает его. Так как это сообщение не содержит никаких сведений о точном нажатии клавиши, использование этого метода не позволяет различать разные горячие клавиши, которые могут быть присоединены к одному окну. Горячая клавиша остается допустимой до тех пор, пока приложение, которое отправило WM_SETHOTKEY, не выйдет.

См. также

Использование CHotKeyCtrl
Элементы управления