WM_SYSCHAR メッセージ
WM_SYSKEYDOWN メッセージが TranslateMessage 関数によって翻訳されるときに、キーボード フォーカスを使用してウィンドウに投稿されます。 システム文字キーの文字コード (Alt キーがダウンしている間に押される文字キー) を指定します。
#define WM_SYSCHAR 0x0106
-
wParam
-
ウィンドウ メニュー キーの文字コード。
-
lParam
-
次の表に示すように、繰り返し数、スキャン コード、拡張キー フラグ、コンテキスト コード、前のキー状態フラグ、および遷移状態フラグ。
Bits 説明 - 0 15
現在のメッセージの繰り返し数。 値は、ユーザーがキーを押した結果としてキーストロークが自動で繰り返された回数です。 キーストロークが十分に長く保持されている場合は、複数のメッセージが送信されます。 ただし、繰り返し数は累積されません。 - 16 23
スキャン コード。 値は、元の機器メーカー (OEM) によって異なります。 - 24
キーが拡張キー (拡張 101 キーまたは 102 キー キーボードに表示される右側の Alt キーや Ctrl キーなど) であるかどうかを示します。 拡張キーの場合、値は 1 です。それ以外の場合は 0 です。 - 25 28
予約;は使用しないでください。 - 29
コンテキスト コード。 Alt キーを押しながらキーを押すと、値は 1 になります。それ以外の場合、値は 0 です。 - 30
以前のキーの状態。 メッセージが送信される前にキーがダウンしている場合は 1、キーが稼働している場合は 0 です。 - 31
遷移状態。 キーが解放されている場合は 1、キーが押されている場合は 0 です。 詳細については、「 キーストローク メッセージ フラグ」を参照してください。
このメッセージを処理する場合、アプリケーションは 0 を返す必要があります。
コンテキスト コードが 0 の場合、メッセージを TranslateAccelerator 関数に渡すことができます。これにより、システム文字キー メッセージではなく標準のキー メッセージであるかのように処理されます。 これにより、アクティブ ウィンドウにキーボード フォーカスがない場合でも、アクティブ ウィンドウでアクセラレータ キーを使用できます。
拡張された 101 キーと 102 キーのキーボードの場合、拡張キーはキーボードのメインセクションの右 Alt キーと Ctrl キーです。テンキーの左側にあるクラスターの INS、DEL、HOME、END、PAGE UP、PAGE DOWN、方向キー、PRINT SCRN キー、BREAK キー、NUMLOCK キー、およびテンキーの除算 (/) キーと Enter キーです。 他のキーボードでは、 パラメーターで拡張キー ビットをサポートしている場合があります。
要件 | 値 |
---|---|
サポートされている最小のクライアント |
Windows 2000 Professional [デスクトップ アプリのみ] |
サポートされている最小のサーバー |
Windows 2000 Server [デスクトップ アプリのみ] |
ヘッダー |
|