CMFCMenuButton クラス
ポップアップ メニューを表示してユーザーのメニュー選択を報告するボタンです。
class CMFCMenuButton : public CMFCButton
メンバー
パブリック コンストラクター
名前 |
説明 |
---|---|
CMFCMenuButton オブジェクトを構築します。 |
パブリック メソッド
名前 |
説明 |
---|---|
ディスパッチする前にウィンドウのメッセージを変換するために、フレームワークによって呼び出されます。(CMFCButton::PreTranslateMessage をオーバーライドします。) |
|
ボタンのテキストとイメージのサイズに合わせてボタンのサイズを変更します。 |
データ メンバー
名前 |
説明 |
---|---|
既定のシステム ポップアップ メニューを表示するか、CContextMenuManager::TrackPopupMenu を使用するかを指定します。 |
|
ポップアップ メニューをボタンの下に表示するか、右側に表示するかを指定します。 |
|
ユーザーがボタンを離したときに、メニュー ボタンの状態を変更するかどうかを指定します。 |
|
結び付けられた Windows メニューへのハンドル。 |
|
ユーザーがポップアップ メニューから選択した項目を示す識別子。 |
解説
CMFCMenuButton クラスは、CButton クラスから派生した CMFCButton クラスから派生します。したがって、コードでは CButton を使用するのと同じ方法で CMFCMenuButton を使用できます。
CMFCMenuButton を作成するときは、関連付けられたポップアップ メニューへのハンドルを渡す必要があります。次に、CMFCMenuButton::SizeToContent 関数を呼び出します。CMFCMenuButton::SizeToContent は、ボタン サイズが、ポップアップ ウィンドウの表示場所 (つまり、ボタンの下または右側) を示す矢印を十分に含むことができる大きさであることを確認します。
使用例
ボタンに結び付けられたメニューのハンドルを設定する方法、テキストとイメージのサイズに従ってボタンのサイズを変更する方法、フレームワークにより表示されるポップアップ メニューを設定する方法を次の例に示します。このコード スニペットは 新しいコントロールのサンプルの一部です。
CMFCMenuButton m_btnMenu;
...
// CMenu m_menu
m_btnMenu.m_hMenu = m_menu.GetSubMenu(0)->GetSafeHmenu();
m_btnMenu.SizeToContent();
// set to FALSE so that the framework calls CContextMenuManager::TrackPopupMenu
// to display its menu
m_btnMenu.m_bOSMenu = FALSE;
継承階層
必要条件
ヘッダー : afxmenubutton.h