CMFCMenuButton クラス

更新 : 2007 年 11 月

ポップアップ メニューを表示してユーザーのメニュー選択を報告するボタンです。

class CMFCMenuButton : public CMFCButton

メンバ

パブリック コンストラクタ

名前

説明

CMFCMenuButton::CMFCMenuButton

CMFCMenuButton オブジェクトを構築します。

パブリック メソッド

名前

説明

CMFCMenuButton::PreTranslateMessage

  (CMFCButton::PreTranslateMessage をオーバーライドします)。

CMFCMenuButton::SizeToContent

ボタンのテキストとイメージのサイズに合わせてボタンのサイズを変更します。

データ メンバ

名前

説明

CMFCMenuButton::m_bOSMenu

既定のシステム ポップアップ メニューを表示するか、CContextMenuManager::TrackPopupMenu を使用するかを指定します。

CMFCMenuButton::m_bRightArrow

ポップアップ メニューをボタンの下に表示するか、右側に表示するかを指定します。

CMFCMenuButton::m_bStayPressed

ユーザーがボタンを離したときに、メニュー ボタンの状態を変更するかどうかを指定します。

CMFCMenuButton::m_hMenu

結び付けられた Windows メニューへのハンドル。

CMFCMenuButton::m_nMenuResult

ユーザーがポップアップ メニューから選択した項目を示す識別子。

解説

CMFCMenuButton クラスは、CButton クラスから派生した CMFCButton クラスから派生します。したがって、コードでは CButton を使用するのと同じ方法で CMFCMenuButton を使用できます。

CMFCMenuButton を作成するときは、関連付けられたポップアップ メニューへのハンドルを渡す必要があります。次に、CMFCMenuButton::SizeToContent 関数を呼び出します。CMFCMenuButton::SizeToContent は、ポップアップ ウィンドウが表示される場所 (つまり、ボタンの下または右側) を指す矢印を十分表示できるボタン サイズであることを確認します。

使用例

ボタンに結び付けられたメニューのハンドルを設定する方法、テキストとイメージのサイズに従ってボタンのサイズを変更する方法、フレームワークにより表示されるポップアップ メニューを設定する方法を次の例に示します。このコード スニペットは、「NewControls サンプル : MFC コントロールのデモ アプリケーション」の一部です。

  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;

継承階層

CObject

   CCmdTarget

      CWnd

         CButton

            CMFCButton

               CMFCMenuButton

必要条件

ヘッダー : afxmenubutton.h

参照

概念

MFC 階層図

参照

CMFCButton クラス

その他の技術情報

クラス (MFC Feature Pack)