CContextMenuManager クラス
更新 : 2007 年 11 月
CContextMenuManager オブジェクトはショートカット メニュー (コンテキスト メニューとも呼ばれる) を管理します。
class CContextMenuManager : public CObject
メンバ
パブリック コンストラクタ
名前 |
説明 |
---|---|
CContextMenuManager オブジェクトを構築します。 |
|
CContextMenuManager::~CContextMenuManager |
デストラクタです。 |
パブリック メソッド
名前 |
説明 |
---|---|
新しいショートカット メニューを追加します。 |
|
指定されたリソース ID に関連付けられたメニューを識別するハンドルを返します。 |
|
指定されたメニュー名に一致するメニューを識別するハンドルを返します。 |
|
メニュー名のリストを返します。 |
|
Windows レジストリに格納されているショートカット メニューを読み込みます。 |
|
コンテキスト メニュー マネージャからショートカット メニューを消去します。 |
|
ショートカット メニューを Windows レジストリに保存します。 |
|
新しいショートカット メニューを表示するときに、CContextMenuManager がアクティブなショートカット メニューを閉じるかどうかを制御します。 |
|
指定されたショートカット メニューを表示します。 |
|
指定されたショートカット メニューを表示します。選択されたメニュー コマンドのインデックスを返します。 |
解説
CContextMenuManager は、ショートカット メニューを管理し、それらのメニューの外観の一貫性を確保します。
CContextMenuManager オブジェクトは手動で作成しないでください。アプリケーションのフレームワークにより CContextMenuManager オブジェクトが作成されます。ただし、アプリケーションの初期化時に CWinAppEx::InitContextMenuManager を呼び出す必要があります。コンテキスト マネージャを初期化したら、CWinAppEx::GetContextMenuManager を使用して、アプリケーションのコンテキスト マネージャへのポインタを取得します。
ショートカット メニューは、実行時に AddMenu を呼び出して作成できます。最初にユーザー入力を受け取らずにショートカット メニューを表示する場合は、ShowPopupMenu を呼び出します。メニューを作成し、ユーザー入力を待機する場合は TrackPopupMenu を使用します。TrackPopupMenu は、選択されたコマンドのインデックスを返し、ユーザーが何も選択しないで終了した場合は 0 を返します。
CContextMenuManager は、その状態を Windows レジストリに保存して読み込むこともできます。
使用例
メニューを CContextMenuManager オブジェクトに追加する方法と、CContextMenuManager オブジェクトが新しいポップアップ メニューを表示するときにアクティブなポップアップ メニューを閉じない方法を次の例に示します。このコード スニペットは、「CustomPages サンプル : MFC ツール バーのカスタマイズ ダイアログ アプリケーション」の一部です。
// The GetContextMenuManager method is inherited from the CWinAppEx class.
GetContextMenuManager()->AddMenu (_T("My menu"), IDR_CONTEXT_MENU);
GetContextMenuManager()->SetDontCloseActiveMenu(true);
継承階層
必要条件
ヘッダー : afxcontextmenumanager.h
参照
概念
参照
CWinAppEx::InitContextMenuManager