CMenuTearOffManager 类
管理可拖曳菜单。 可拖曳菜单是菜单栏上的菜单。 用户可以从菜单栏移开可拖曳菜单,从而使可拖拽菜单浮动。
有关详细信息,请参阅所安装的 Visual Studio 的 C\atlmfc\src\mfc 文件夹中的源代码。
语法
class CMenuTearOffManager : public CObject
成员
公共构造函数
名称 | 描述 |
---|---|
CMenuTearOffManager::CMenuTearOffManager | 构造 CMenuTearOffManager 对象。 |
公共方法
备注
若要在应用程序中使用可拖曳菜单,必须有一个 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);
继承层次结构
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。
备注
从 uiTearOffMenuFirst 到 uiTearOffMenuLast 的菜单 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