CMenuTearOffManager 类

管理可拖曳菜单。 可拖曳菜单是菜单栏上的菜单。 用户可以从菜单栏移开可拖曳菜单,从而使可拖拽菜单浮动。

有关详细信息,请参阅所安装的 Visual Studio 的 C\atlmfc\src\mfc 文件夹中的源代码。

语法

class CMenuTearOffManager : public CObject

成员

公共构造函数

名称 描述
CMenuTearOffManager::CMenuTearOffManager 构造 CMenuTearOffManager 对象。

公共方法

名称 描述
CMenuTearOffManager::Build
CMenuTearOffManager::GetRegPath
CMenuTearOffManager::Initialize 初始化 CMenuTearOffManager 对象。
CMenuTearOffManager::IsDynamicID
CMenuTearOffManager::Parse
CMenuTearOffManager::Reset
CMenuTearOffManager::SetInUse
CMenuTearOffManager::SetupTearOffMenus

备注

若要在应用程序中使用可拖曳菜单,必须有一个 CMenuTearOffManager 对象。 在大多数情况下,不会直接创建或初始化 CMenuTearOffManager 对象。 调用 CWinAppEx::EnableTearOffMenus 函数时,系统会为你处理此问题。

示例

以下示例演示如何通过调用 CWinAppEX::EnableTearOffMenus 方法来构造和初始化 CMenuTearOffManager 对象。 此代码片段属于 Word Pad 示例

// The EnableTearOffMenus method is inherited from the CWinAppEx class.
EnableTearOffMenus(NULL, ID_FREE_TEAROFF1, ID_FREE_TEAROFF2);

继承层次结构

CObject

CMenuTearOffManager

要求

标头:afxmenutearoffmanager.h

CMenuTearOffManager::Build

void Build(
    UINT uiTearOffBarID,
    CString& strText);

参数

[in] uiTearOffBarID

[in] strText

备注

CMenuTearOffManager::CMenuTearOffManager

构造 CMenuTearOffManager 对象。

CMenuTearOffManager();

备注

在大多数情况下,不应手动创建 CMenuTearOffManager。 调用 CWinAppEx::EnableTearOffMenus 时,应用程序的框架将创建 CMenuTearOffManager 对象。

CMenuTearOffManager::GetRegPath

LPCTSTR GetRegPath() const;

返回值

注解

CMenuTearOffManager::Initialize

初始化 CMenuTearOffManager 对象。

BOOL Initialize(
    LPCTSTR lpszRegEntry,
    UINT uiTearOffMenuFirst,
    UINT uiTearOffMenuLast);

参数

lpszRegEntry
[in] 包含注册表项路径的字符串。 应用程序在此注册表项中存储可拖曳栏的设置。

uiTearOffMenuFirst
[in] 可拖曳菜单的第一个菜单 ID。

uiTearOffMenuLast
[in] 可拖曳菜单的最后一个菜单 ID。

返回值

如果成功,则不为 0;否则为 0。

备注

uiTearOffMenuFirstuiTearOffMenuLast 的菜单 ID 范围必须是连续间隔。 间隔用于定义可在应用程序中同时显示的可拖曳菜单数。

CMenuTearOffManager::IsDynamicID

BOOL IsDynamicID(UINT uiID) const;

参数

[in] uiID

返回值

注解

CMenuTearOffManager::Parse

UINT Parse(CString& str);

参数

[in] str

返回值

注解

CMenuTearOffManager::Reset

void Reset(HMENU hmenu);

参数

[in] hmenu

备注

CMenuTearOffManager::SetInUse

void SetInUse(
    UINT uiCmdId,
    BOOL bUse = TRUE);

参数

[in] uiCmdId

[in] bUse

注解

CMenuTearOffManager::SetupTearOffMenus

void SetupTearOffMenus(HMENU hMenu);

参数

[in] hMenu

备注

另请参阅

层次结构图

CWinAppEx 类