全局热键

全局热键与特定 nonchild 窗口。 它允许用户激活该系统的任何部分的窗口。 应用程序 WM_SETHOTKEY 通过发送消息设置特定窗口的全局热键到该窗口。 例如,在中,如果 m_HotKeyCtrl 为 CHotKeyCtrl 对象,pMainWnd 是指向窗口中激活,则这些热键按下时,可以使用以下代码将指定控件中的热键与 Windows 指向的 pMainWnd。

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

每当用户按全局热键,指定的窗口收到指定 SC_HOTKEY 作为命令类型的消息。WM_SYSCOMMAND 接收到此消息还可以激活的窗口。 由于此消息不包括有关按下的确切键的任何信息,使用该方法不允许区分可以附加到同一窗口的区别热键之间。 热键仍保持有效直至发送 WM_SETHOTKEY 退出的应用程序。

请参见

参考

使用 CHotKeyCtrl

概念

控件 (MFC)