afx_msgvoidOnSysKeyDown (nFlagsのUINTUINTのnRepCnt、のUINTのnChar,);
パラメーター
nChar
押されたキーの仮想キー コードを指定します。
nRepCnt
繰り返し回数を指定します。
nFlags
次の一覧に示すように、スキャン コード、キー変換コード、直前のキー状態、およびコンテキスト コードを指定します:
| 値 | 意味 |
| 0 〜 7 です。 | コード (OEM に依存する値) をスキャンします。上位ワードの下位バイト。 |
| 8 | ファンクション キーまたはキー テンキー (拡張キーの場合は 1、それ以外の場合 0) などの拡張キー。 |
| 9 | 使用されていません。 |
| 11?12 | Windows によって内部的に使用。 |
| 13 | コンテキスト コード (1、キーが押された、0 それ以外の場合は、ALT キーを押した場合)。 |
| 14 | 直前のキー状態 (場合は、メッセージが送信前に、0 をキーである場合、キーが押されて 1)。 |
| 15 | 遷移状態 (1、キーが離されている場合、キーが押されている場合は 0)。 |
OnSysKeyDownの呼び出しでは、キー変換ビット (ビット 15) は 0 です。キーが押されている間、ALT キーがダウンした場合、コンテキスト コード ビット (ビット 13) は 1 です。ウィンドウが入力フォーカスを持たないため、メッセージをアクティブ ウィンドウに送信された場合は 0 になります。
解説
CWndオブジェクトに入力フォーカスがある場合、 OnSysKeyDownメンバー関数、ユーザーが ALT キーを押しを保持し、別のキーを押すと、フレームワークによって呼び出されますです。ウィンドウに現在入力フォーカスがあるない場合は、アクティブなウィンドウのOnSysKeyDownメンバー関数が呼び出されます。メッセージを受信、 CWndオブジェクトはnFlagsのコンテキスト コードを調べるにはこれら 2 つのコンテキストを区別することができます。
コンテキスト コードが 0 の場合、 OnSysKeyDownによって、 wm SYSKEYDOWNメッセージに渡すことができます、 ものとしてシステム キー メッセージの代わりに通常のキー メッセージを処理するTranslateAccelerator Windows 関数。これは、アクセラレータ キーをアクティブなウィンドウが入力フォーカスを持たない場合でも、アクティブなウィンドウを使用することができます。
WM_SYSKEYUPメッセージを受信する前のための自動繰り返し、 1 つ以上の onsyskeydown発生します。直前のキー状態 (ビット 14) を使用して、onsyskeydownが最初の移行または繰り返しを遷移を示すかどうかを確認できます。
IBM 拡張 101 および 102 キー キーボードの場合は、拡張キーは右の ALT キーを押し、右の CTRL キー、キーボードのメイン セクションにある;アドイン、・ デル ・、ホーム、終了、ページをページを矢印キー、テンキー パッドの左側にクラスターで;スラッシュ (/) とテンキーの ENTER キー。いくつか他のキーボードの拡張キー ビットnFlagsのサポートします。
注特価;このメンバー関数は、Windows メッセージを処理するアプリケーションを許可するためにフレームワークによって呼び出されます。関数に渡されるパラメーターは、メッセージが受信されたときに、フレームワークによって受信パラメーターを反映します。この関数の基本クラス実装を呼び出す場合は、その実装はもともとメッセージと指定パラメーターではなく、関数に渡されるパラメーターを使用します。(&N)。
CWnd の概要|nbsp;クラス メンバー |階層図(&N)
参照特価; :: TranslateAccelerator、 WM_SYSKEYUP、 wm SYSKEYDOWN(&N)