グローバル ホット キー

更新 : 2007 年 11 月

グローバル ホット キーは、子ウィンドウ以外の特定のウィンドウに関連付けられます。グローバル ホット キーを使用すると、ユーザーはいつでもそのウィンドウをアクティブにできます。アプリケーションでは、WM_SETHOTKEY メッセージを特定のウィンドウに送信して、そのウィンドウに対するグローバル ホット キーを設定します。たとえば、m_HotKeyCtrl が CHotKeyCtrl オブジェクトで、pMainWnd がホット キーを押したときにアクティブになるウィンドウへのポインタの場合、コントロールで指定したホット キーと pMainWnd が指すウィンドウを次のコードで関連付けます。

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

ユーザーがグローバル ホット キーを押すたびに、そのキーに関連付けられたウィンドウは、コマンドのタイプとして SC_HOTKEY が指定されている WM_SYSCOMMAND メッセージを受信します。このメッセージも、受信先のウィンドウをアクティブにします。ただし、このメッセージには押されたキーに関する正しい情報が含まれていません。このため、この方法では、同じウィンドウに複数のホット キーがアタッチされている場合に、キーを区別できません。ホット キーは、WM_SETHOTKEY を送信したアプリケーションが存在する間は有効です。

参照

概念

コントロール (MFC)

参照

CHotKeyCtrl の使い方