CMFCPopupMenuBar 类
嵌入到弹出菜单的菜单栏。
语法
class CMFCPopupMenuBar : public CMFCToolBar
成员
公共方法
数据成员
名称 | 描述 |
---|---|
CMFCPopupMenuBar::m_bDisableSideBarInXPMode | 指定当应用程序具有 Windows XP 外观时是否显示灰色边栏。 |
注解
CMFCPopupMenuBar
与 CMFCPopupMenu 类是同时创建的并嵌入其中。 CMFCPopupMenuBar
涵盖 CMFCPopupMenu
对象的整个工作区。 它支持键盘和鼠标输入。 它还将该输入传达给 CMFCPopupMenu
和顶级框架窗口。
示例
下面的示例演示如何从 CMFCPopupMenu
对象初始化 CMFCPopupMenuBar
对象。 此代码片段属于 Draw Client 示例。
// CMFCPopupMenu* pMenuPopup
CMFCPopupMenuBar *pMenuBar = pMenuPopup->GetMenuBar();
继承层次结构
要求
标头:afxpopupmenubar.h
CMFCPopupMenuBar::AdjustSizeImmediate
立即重新计算弹出菜单栏窗格的布局。 (替代 CPane::AdjustSizeImmediate。)
virtual void AdjustSizeImmediate(BOOL bRecalcLayout);
参数
bRecalcLayout
[in] 若自动重新计算弹出菜单栏窗格的布局,则为 TRUE;否则为 FALSE。
备注
CMFCPopupMenuBar::BuildOrigItems
从指定的菜单资源加载弹出菜单项。
BOOL BuildOrigItems(UINT uiMenuResID);
参数
uiMenuResID
[in] 指定要加载的菜单资源的菜单 ID。
返回值
如果成功,则返回 TRUE;如果失败,则返回 FALSE。
备注
CMFCPopupMenuBar::CloseDelayedSubMenu
关闭已延迟的弹出菜单按钮。
virtual void CloseDelayedSubMenu();
备注
CMFCPopupMenuBar::ExportToMenu
从弹出菜单按钮生成菜单。
virtual HMENU ExportToMenu() const;
返回值
返回新菜单的句柄。
备注
CMFCPopupMenuBar::FindDestintationToolBar
找到指定点所在的工具栏。
CMFCToolBar* FindDestintationToolBar(CPoint point);
参数
point
[in] 屏幕上的点。
返回值
返回指向点所在的工具栏的句柄(如果有);如果没有,则返回 NULL。
注解
CMFCPopupMenuBar::GetCurrentMenuImageSize
指示菜单按钮图像的大小。
virtual CSize GetCurrentMenuImageSize() const;
返回值
返回工具栏中菜单按钮图像的大小。
注解
CMFCPopupMenuBar::GetDefaultMenuId
返回默认菜单项的标识符。
UINT GetDefaultMenuId() const;
返回值
返回弹出菜单栏中默认菜单项的标识符。
备注
CMFCPopupMenuBar::GetLastCommandIndex
获取最近调用的菜单命令的索引。
static int __stdcall GetLastCommandIndex();
返回值
返回已调用的最后一个菜单命令的索引。
注解
CMFCPopupMenuBar::GetOffset
获取弹出菜单栏的行偏移量。
int GetOffset() const;
返回值
返回弹出菜单栏的行偏移量。
备注
此值是使用 CMFCPopupMenuBar::SetOffset 设置的。
CMFCPopupMenuBar::ImportFromMenu
从指定菜单中导入弹出菜单按钮。
virtual BOOL ImportFromMenu(
HMENU hMenu,
BOOL bShowAllCommands = FALSE);
参数
hMenu
[in] 从中导入弹出菜单按钮的菜单。
bShowAllCommands
[in] 如果要导入菜单上的所有命令,则为 TRUE;如果可能隐藏很少使用的命令,则为 FALSE。
返回值
如果菜单按钮已成功从菜单中导入,则返回 TRUE;如果失败,则返回 FALSE。
注解
CMFCPopupMenuBar::IsDropDownListMode
指示弹出菜单栏是否处于下拉列表模式。
BOOL IsDropDownListMode() const;
返回值
如果弹出菜单栏处于下拉列表模式,则返回 TRUE;如果不是,则返回 FALSE。
备注
CMFCPopupMenuBar::IsPaletteMode
指示弹出菜单栏是否处于调色板模式。
BOOL IsPaletteMode() const;
返回值
如果启用了调色板模式,则返回 TRUE;如果未启用,则返回 FALSE。
备注
当菜单栏设置为调色板模式时,菜单项将显示在多个列和数量有限的行中。
CMFCPopupMenuBar::IsRibbonPanel
指示这是否为功能区面板(默认为 FALSE)。
virtual BOOL IsRibbonPanel() const;
返回值
默认返回 FALSE,指示这不是功能区面板。
注解
CMFCPopupMenuBar::IsRibbonPanelInRegularMode
指示这是否是常规模式下的功能区面板(默认为 FALSE)。
virtual BOOL IsRibbonPanelInRegularMode() const;
返回值
默认返回 FALSE,指示这不是常规模式下的功能区面板。
备注
CMFCPopupMenuBar::LoadFromHash
加载已存档的菜单。
BOOL LoadFromHash(HMENU hMenu);
参数
hMenu
[in] 要加载的已存档菜单的句柄。
返回值
如果菜单加载成功,则返回 TRUE;如果失败,则返回 FALSE。
注解
CMFCPopupMenuBar::m_bDisableSideBarInXPMode
一个布尔参数,指示应用程序在具有 Windows XP 外观时是否具有灰色边栏。
BOOL m_bDisableSideBarInXPMode;
备注
如果此成员变量设置为 FALSE,并且应用程序具有 Windows XP 外观,则框架将在应用程序中绘制一个灰色边栏。
默认值是 FALSE。
CMFCPopupMenuBar::RestoreDelayedSubMenu
还原延迟的菜单按钮以关闭弹出菜单栏。
virtual void RestoreDelayedSubMenu();
备注
CMFCPopupMenuBar::SetButtonStyle
设置给定索引处的工具栏按钮的样式。 (替代 CMFCToolBar::SetButtonStyle。)
virtual void SetButtonStyle(
int nIndex,
UINT nStyle);
参数
nIndex
[in] 要设置其样式的工具栏按钮的从零开始的索引。
nStyle
[in] 按钮的样式。 有关可用工具栏按钮样式的列表,请参阅工具栏控件样式。
备注
CMFCPopupMenuBar::SetOffset
设置弹出菜单栏的行偏移量。
void SetOffset(int iOffset);
参数
iOffset
[in] 弹出菜单栏应偏移的行数。
注解
CMFCPopupMenuBar::StartPopupMenuTimer
启动指定的延迟弹出菜单按钮的计时器。
void StartPopupMenuTimer(
CMFCToolBarMenuButton* pMenuButton,
int nDelayFactor = 1);
参数
pMenuButton
[in] 指向要为其设置延迟计时器的菜单按钮的指针。
nDelayFactor
[in] 要乘以标准菜单延迟时间(通常在半秒到五秒之间)的延迟因子(至少等于 1)。