キーボード アクセラレータ (または単純なアクセラレータ) は、アプリケーションの WM_COMMAND または WM_SYSCOMMAND メッセージを生成するキーストロークまたはキーストロークの組み合わせです。
このセクションでは
名前 | 形容 |
---|---|
キーボード アクセラレータの について | キーボード アクセラレータについて説明します。 |
キーボード アクセラレータを使用した | キーボード アクセラレータに関連付けられているタスクについて説明します。 |
キーボード アクセラレータ リファレンス | API リファレンスが含まれています。 |
キーボード アクセラレータの機能
名前 | 形容 |
---|---|
CopyAcceleratorTableをする | 指定したアクセラレータ テーブルをコピーします。 この関数は、アクセラレータ テーブル ハンドルに対応するアクセラレータ テーブル データを取得したり、アクセラレータ テーブル データのサイズを決定したりするために使用されます。 |
CreateAcceleratorTableの | アクセラレータ テーブルを作成します。 |
DestroyAcceleratorTableの | アクセラレータ テーブルを破棄します。 |
LoadAccelerators | 指定したアクセラレータ テーブルを読み込みます。 |
TranslateAcceleratorの | メニュー コマンドのアクセラレータ キーを処理します。 この関数は、WM_KEYDOWN または WM_SYSKEYDOWN メッセージを WM_COMMAND または WM_SYSCOMMAND メッセージに変換し (指定したアクセラレータ テーブルにキーのエントリがある場合)、WM_COMMAND または WM_SYSCOMMAND メッセージを指定されたウィンドウ プロシージャに直接送信します。
TranslateAccelerator は、ウィンドウ プロシージャがメッセージを処理するまで戻りません。 |
キーボード アクセラレータ メッセージ
名前 | 形容 |
---|---|
WM_CHANGEUISTATE | UI の状態を変更する必要があることを示すために送信されます。 |
WM_INITMENU | メニューがアクティブになりようとしているときに送信されます。 これは、ユーザーがメニュー バーの項目をクリックするか、メニュー キーを押したときに発生します。 これにより、アプリケーションはメニューを表示する前に変更できます。 ウィンドウは、WindowProc 関数を介してこのメッセージを受信します。 |
WM_QUERYUISTATE | ウィンドウの UI 状態を取得するために送信されます。 |
WM_UPDATEUISTATE | 指定したウィンドウとそのすべての子ウィンドウの UI 状態を変更するために送信されます。 |
キーボード アクセラレータの通知
名前 | 形容 |
---|---|
WM_INITMENUPOPUP | ドロップダウン メニューまたはサブメニューがアクティブになりようとしているときに送信されます。 これにより、アプリケーションはメニュー全体を変更することなく、表示される前にメニューを変更できます。 |
WM_MENUCHAR | メニューがアクティブで、ユーザーがニーモニックキーまたはアクセラレータキーに対応しないキーを押したときに送信されます。 このメッセージは、メニューを所有するウィンドウに送信されます。 |
WM_MENUSELECT | ユーザーがメニュー項目を選択したときに、メニューの所有者ウィンドウに送信されます。 |
WM_SYSCHAR |
WM_SYSKEYDOWN メッセージが TranslateMessage 関数によって翻訳されたときに、キーボード フォーカスを使用してウィンドウに投稿されます。 システム文字キーの文字コードを指定します。つまり、Alt キーがダウンしている間に押される文字キーです。 |
WM_SYSCOMMAND | ウィンドウは、ユーザーが ウィンドウ メニューからコマンドを選択したとき、またはユーザーが最大化ボタン、最小化ボタン、復元ボタン、または閉じるボタンを選択したときに、このメッセージを受け取ります。 |
キーボード アクセラレータの構造
名前 | 形容 |
---|---|
ACCELをする | アクセラレータ テーブルで使用されるアクセラレータ キーを定義します。 |