CMFCRibbonStatusBar 类
CMFCRibbonStatusBar
类实现可显示功能区元素的状态栏控件。
语法
class CMFCRibbonStatusBar : public CMFCRibbonBar
成员
公共方法
受保护方法
名称 | 描述 |
---|---|
CMFCRibbonStatusBar::OnDrawInformation | 显示启用信息模式时出现在功能区状态栏上的信息字符串。 |
注解
用户可以使用功能区状态栏的内置上下文菜单更改功能区状态栏上功能区元素的可见性。 可以动态地添加或移除元素。
功能区状态栏有两个区域:主区域和扩展区域。 扩展区域显示在功能区状态栏右侧,其颜色与主区域不同。
通常,状态栏的主区域显示状态通知,扩展区域显示视图控件。 当用户调整功能区状态栏的大小时,扩展区域会尽可能长时间地保持可见。
示例
下面的示例演示了如何使用 CMFCRibbonStatusBar
类中的各种方法。 该示例演示了如何将新的功能区元素添加到功能区状态栏、将功能区元素添加到功能区状态栏的扩展区域、添加分隔符以及启用功能区状态栏的常规模式。
// CMFCRibbonStatusBar m_wndStatusBar
m_wndStatusBar.AddElement(rsbp, strTitlePane1);
m_wndStatusBar.AddExtendedElement(new CMFCRibbonStatusBarPane(ID_STATUSBAR_PANE2, strTitlePane2, TRUE),
strTitlePane2);
m_wndStatusBar.AddSeparator();
m_wndStatusBar.SetInformation(NULL);
继承层次结构
要求
标头:afxribbonstatusbar.h
CMFCRibbonStatusBar::AddDynamicElement
将动态元素添加到功能区状态栏。
void AddDynamicElement(CMFCRibbonBaseElement* pElement);
参数
pElement
[in] 指向动态元素的指针。
备注
与常规元素不同,动态元素不可自定义,状态栏的自定义菜单不显示它们。
CMFCRibbonStatusBar::AddElement
将新的功能区元素添加到功能区状态栏。
void AddElement(
CMFCRibbonBaseElement* pElement,
LPCTSTR lpszLabel,
BOOL bIsVisible=TRUE);
参数
pElement
[in] 指向已添加元素的指针。
lpszLabel
[in] 元素的文本标签。
bIsVisible
[in] 如果要将元素添加为可见,则为 TRUE,如果要将元素添加为隐藏,则为 FALSE。
CMFCRibbonStatusBar::AddExtendedElement
将功能区元素添加到功能区状态栏的扩展区域。
void AddExtendedElement(
CMFCRibbonBaseElement* pElement,
LPCTSTR lpszLabel,
BOOL bIsVisible=TRUE);
参数
pElement
[in] 指向已添加元素的指针。
lpszLabel
[in] 元素的文本标签。
bIsVisible
[in] 如果要将元素添加为可见,则为 TRUE,如果要将元素添加为隐藏,则为 FALSE。
备注
扩展区域位于状态栏控件的右侧。
CMFCRibbonStatusBar::AddSeparator
将分隔符添加到功能区状态栏。
void AddSeparator();
备注
框架在方法 CMFCRibbonStatusBar::AddElement 之后添加了一个分隔符。 插入最后一个元素。
CMFCRibbonStatusBar::Create
创建功能区状态栏。
BOOL Create(
CWnd* pParentWnd,
DWORD dwStyle=WS_CHILD|WS_VISIBLE|CBRS_BOTTOM,
UINT nID=AFX_IDW_STATUS_BAR);
参数
pParentWnd
[in] 指向父窗口的指针。
dwStyle
[in] 控件样式的逻辑“或”组合。
nID
[in] 状态栏的控件 ID。
返回值
如果已成功创建状态栏,则为 TRUE;否则为 FALSE。
CMFCRibbonStatusBar::CreateEx
创建具有扩展样式的功能区状态栏。
BOOL CreateEx(
CWnd* pParentWnd,
DWORD dwCtrlStyle=0,
DWORD dwStyle=WS_CHILD|WS_VISIBLE|CBRS_BOTTOM,
UINT nID=AFX_IDW_STATUS_BAR);
参数
pParentWnd
指向父窗口的指针。
dwCtrlStyle
用于创建状态栏对象的附加样式的逻辑“或”组合。
dwStyle
状态栏的控件样式。
nID
状态栏的控件 ID。
返回值
如果已成功创建状态栏,则为 TRUE;否则为 FALSE。
CMFCRibbonStatusBar::FindByID
有关详细信息,请参阅所安装的 Visual Studio 的 C\atlmfc\src\mfc 文件夹中的源代码。
CMFCRibbonBaseElement* FindByID(UINT uiCmdID, BOOL = TRUE);
参数
[in] uiCmdID
[in] BOOL
返回值
注解
CMFCRibbonStatusBar::FindElement
返回指向具有指定命令 ID 的元素的指针。
CMFCRibbonBaseElement* FindElement(UINT uiID);
参数
uiID
[in] 元素的 ID。
返回值
指向具有指定命令 ID 的元素的指针。 如果没有此类元素,则为 NULL。
CMFCRibbonStatusBar::GetCount
返回位于功能区状态栏主区域中的元素数。
int GetCount() const;
返回值
位于功能区状态栏主区域中的元素数。
CMFCRibbonStatusBar::GetElement
返回指向位于指定索引处的元素的指针。
CMFCRibbonBaseElement* GetElement(int nIndex);
参数
nIndex
[in] 指定位于状态栏控件主区域中的元素的从零开始的索引。
返回值
指向位于指定索引处的元素的指针。 如果索引为负或超过状态栏中的元素数,则为 NULL。
注解
CMFCRibbonStatusBar::GetExCount
返回位于功能区状态栏扩展区域的元素数。
int GetExCount() const;
返回值
位于功能区状态栏扩展区域的元素数。
CMFCRibbonStatusBar::GetExElement
返回指向元素的指针,该元素位于功能区状态栏扩展区域中的指定索引处。 扩展区域位于状态栏控件的右侧。
CMFCRibbonBaseElement* GetExElement(int nIndex);
参数
nIndex
[in] 指定元素的索引(从零开始),该元素位于状态栏控件的扩展区域中。
返回值
一个指向元素的指针,该元素位于功能区状态栏扩展区域中的指定索引处。 如果 nIndex 为负或超过功能区状态栏的扩展区域中的元素数,则为 NULL。
备注
CMFCRibbonStatusBar::GetExtendedArea
有关详细信息,请参阅所安装的 Visual Studio 的 C\atlmfc\src\mfc 文件夹中的源代码。
virtual BOOL GetExtendedArea(CRect& rect) const;
参数
[in] rect
返回值
备注
CMFCRibbonStatusBar::GetSpace
有关详细信息,请参阅所安装的 Visual Studio 的 C\atlmfc\src\mfc 文件夹中的源代码。
int GetSpace() const;
返回值
备注
CMFCRibbonStatusBar::IsBottomFrame
有关详细信息,请参阅所安装的 Visual Studio 的 C\atlmfc\src\mfc 文件夹中的源代码。
BOOL IsBottomFrame() const;
返回值
备注
CMFCRibbonStatusBar::IsExtendedElement
有关详细信息,请参阅所安装的 Visual Studio 的 C\atlmfc\src\mfc 文件夹中的源代码。
BOOL IsExtendedElement(CMFCRibbonBaseElement* pElement) const;
参数
[in] pElement
返回值
注解
CMFCRibbonStatusBar::IsInformationMode
确定是否为功能区状态栏启用信息模式。
BOOL IsInformationMode() const;
返回值
如果状态栏可以在信息模式下工作,则为 TRUE;否则为 FALSE。
备注
在信息模式下,状态栏隐藏所有常规窗格并显示消息字符串。
CMFCRibbonStatusBar::OnDrawInformation
显示启用信息模式时出现在功能区状态栏上的字符串。
virtual void OnDrawInformation(
CDC* pDC,
CString& strInfo,
CRect rectInfo);
参数
pDC
[in] 指向设备上下文的指针。
strInfo
[in] 信息字符串。
rectInfo
[in] 边框。
备注
如果要自定义状态栏上信息字符串的外观,请在派生类中重写此方法。 使用 CMFCribbonStatusBar::SetInformation 方法将状态栏置于信息模式。 在此模式下,状态栏会隐藏所有窗格并显示由 strInfo 指定的信息字符串。
CMFCRibbonStatusBar::RecalcLayout
有关详细信息,请参阅所安装的 Visual Studio 的 C\atlmfc\src\mfc 文件夹中的源代码。
virtual void RecalcLayout();
备注
CMFCRibbonStatusBar::RemoveAll
从功能区状态栏中移除所有元素。
void RemoveAll();
CMFCRibbonStatusBar::RemoveElement
从功能区状态栏中移除具有指定命令 ID 的元素。
BOOL RemoveElement(UINT uiID);
参数
uiID
[in] 要从状态栏中移除的元素的 ID。
返回值
如果删除了具有指定 uiID 的元素,则为 TRUE。 否则返回 FALSE。
CMFCRibbonStatusBar::SetInformation
启用或禁用功能区状态栏的信息模式。
void SetInformation(LPCTSTR lpszInfo);
参数
lpszInfo
[in] 信息字符串。
备注
使用此方法可将状态栏置于信息模式下。 在此模式下,状态栏会隐藏所有窗格并显示由 lpszInfo 指定的信息字符串。
当 lpszInfo 为 NULL 时,状态栏将还原为常规模式。
另请参阅
层次结构图
类
CMFCRibbonBar 类
CMFCRibbonBaseElement 类
CMFCRibbonBar 类