次の方法で共有


CWnd::OnMenuChar

更新 : 2007 年 11 月

ユーザーが押したメニューのニーモニック文字が、現在のメニューに組み込まれているニーモニックと一致しない場合に、フレームワークからこのメンバ関数が呼び出されます。

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 になります。

cd5xeb57.alert_note(ja-jp,VS.90).gifメモ :

このメンバ関数は、アプリケーションが Windows メッセージを処理できるようにするためにフレームワークによって呼び出されます。この関数に渡されるパラメータの値は、フレームワークがメッセージ受信時に受け取ったパラメータの値に基づいています。この関数の基本クラスの実装を呼び出した場合は、関数に渡したパラメータではなく、メッセージと共に渡されたパラメータ自体が使用されます。

必要条件

ヘッダー : afxwin.h

参照

参照

CWnd クラス

階層図

CWnd::OnMenuChar

その他の技術情報

CWnd のメンバ