CWnd::OnMenuChar
ユーザーが押したメニューのニーモニック文字が、現在のメニューに組み込まれているニーモニックと一致しない場合に、フレームワークからこのメンバー関数が呼び出されます。
afx_msg LRESULT OnMenuChar(
UINT nChar,
UINT nFlags,
CMenu* pMenu
);
パラメーター
nChar
ビルドの設定に応じて、ユーザーが押した ANSI 文字または Unicode 文字を指定します。nFlags
メニューがポップアップ メニューならば、MF_POPUP フラグを持ちます。 メニューがコントロール メニューならば、MF_SYSMENU フラグを持ちます。pMenu
選択された CMenu へのポインターを持ちます。 このポインターは一時的である場合があるので、後で使用するために保持しておくことはできません。
戻り値
戻り値の上位ワードは、次のコマンド コードのいずれかになります。
値 |
説明 |
---|---|
0 |
ユーザーが押した文字を破棄して、短いビープ音をシステム スピーカーで発生するように Windows に知らせます。 |
1 |
現在のメニューを閉じるよう、Windows に知らせます。 |
2 |
戻り値の下位ワードに、指定された項目のメニュー項目番号が設定されていることを Windows に知らせます。 この項目は Windows が選択します。 |
上位ワードが 0 または 1 の場合は、下位ワードは無視されます。 メニュー内に置かれたビットマップの選択にアクセラレータ (ショートカット) を使う場合は、アプリケーションによってこのメッセージを処理する必要があります。
解説
このメッセージは、メニューを所有する CWnd に送られます。 ユーザーが Alt キーと他のキーを同時に押した場合で、そのキーがニーモニック文字と一致しなくても、OnMenuChar が呼び出されます。 このとき、pMenu は CWnd が所有するメニューで、nFlags は 0 になります。
注意
このメンバー関数は、アプリケーションが Windows メッセージを処理できるようにするためにフレームワークによって呼び出されます。 この関数に渡されるパラメーターの値は、フレームワークがメッセージ受信時に受け取ったパラメーターの値に基づいています。 この関数の基本クラスの実装を呼び出した場合は、関数に渡したパラメーターではなく、メッセージと共に渡されたパラメーター自体が使用されます。
必要条件
**ヘッダー:**afxwin.h
参照
参照
CWnd::OnMenuChar