Globale Abkürzungstasten
Ein globaler Hot Key ist einem bestimmten nichtchilden Fenster zugeordnet. Er ermöglicht es dem Benutzer, das Fenster aus einem beliebigen Teil des Systems zu aktivieren. Eine Anwendung legt einen globalen Hot Key für ein bestimmtes Fenster fest, indem die WM_SETHOTKEY Nachricht an dieses Fenster gesendet wird. Wenn es sich beispielsweise m_HotKeyCtrl
um das CHotKeyCtrl-Objekt handelt und pMainWnd
ein Zeiger auf das Fenster ist, das aktiviert werden soll, wenn die Hot-Taste gedrückt wird, können Sie den folgenden Code verwenden, um die im Steuerelement angegebene Hot key mit dem Fenster zu verknüpfen, auf pMainWnd
das verwiesen wird.
WORD wKeyAndShift = static_cast<WORD>(m_HotKeyCtrl.GetHotKey());
this->SendMessage(WM_SETHOTKEY, wKeyAndShift);
Wenn der Benutzer eine globale Abkürzungstaste drückt, empfängt das angegebene Fenster eine WM_SYSCOMMAND Nachricht, die SC_HOTKEY als Typ des Befehls angibt. Diese Nachricht aktiviert auch das Fenster, das es empfängt. Da diese Nachricht keine Informationen zu der genauen Taste enthält, die gedrückt wurde, lässt die Verwendung dieser Methode keine Unterscheidung zwischen verschiedenen Hot Keys zu, die möglicherweise an dasselbe Fenster angefügt werden. Die Hot key re Standard s valid until the application that sent WM_SETHOTKEY exits.