CMFCRibbonStatusBarPane 类
CMFCRibbonStatusBarPane
类实现可添加到功能区状态栏的功能区元素。
语法
class CMFCRibbonStatusBarPane : public CMFCRibbonButton
成员
公共构造函数
名称 | 描述 |
---|---|
CMFCRibbonStatusBarPane::CMFCRibbonStatusBarPane | 构造并初始化一个 CMFCRibbonStatusBarPane 对象。 |
公共方法
名称 | 描述 |
---|---|
CMFCRibbonStatusBarPane::GetAlmostLargeText | 返回一个字符串,该字符串定义可在窗格中显示且不截断的最长文本字符串。 |
CMFCRibbonStatusBarPane::GetTextAlign | 返回文本对齐方式的当前设置。 |
CMFCRibbonStatusBarPane::IsAnimation | 确定动画是否正在进行中。 |
CMFCRibbonStatusBarPane::IsExtended | 确定窗格是否位于功能区状态栏的扩展区域。 |
CMFCRibbonStatusBarPane::OnDrawBorder | (重写 CMFCRibbonButton::OnDrawBorder。) |
CMFCRibbonStatusBarPane::OnFillBackground | (重写 CMFCRibbonButton::OnFillBackground。) |
CMFCRibbonStatusBarPane::SetAlmostLargeText | 定义可在窗格中显示且不截断的最长文本字符串。 |
CMFCRibbonStatusBarPane::SetAnimationList | 向窗格分配可用于动画的图像列表。 |
CMFCRibbonStatusBarPane::SetTextAlign | 设置文本对齐方式。 |
CMFCRibbonStatusBarPane::StartAnimation | 启动分配给窗格的动画。 |
CMFCRibbonStatusBarPane::StopAnimation | 停止分配给窗格的动画。 。 |
受保护方法
名称 | 描述 |
---|---|
CMFCRibbonStatusBarPane::OnFinishAnimation | 当分配给窗格的动画停止时,由框架调用。 |
示例
下面的示例演示如何使用 CMFCRibbonStatusBarPane
类中的各种方法。 该示例演示如何构造 CMFCRibbonStatusBarPane
对象、设置状态栏窗格标签的文本对齐方式、定义可在状态栏窗格中显示且不截断的最长文本、向状态栏窗格附加可用于动画的图像列表以及启动动画。
CString strTitlePane1;
CString strTitlePane2;
strTitlePane1.LoadString(IDS_STATUS_PANE1);
strTitlePane2.LoadString(IDS_STATUS_PANE2);
CMFCRibbonStatusBarPane* rsbp = new CMFCRibbonStatusBarPane( ID_STATUSBAR_PANE1, strTitlePane1, TRUE );
rsbp->SetTextAlign( TA_CENTER );
rsbp->SetAlmostLargeText( _T( "Status bar" ) );
CBitmap bitmap;
bitmap.LoadBitmapW( IDB_FILESMALL );
rsbp->SetAnimationList( (HBITMAP)bitmap );
rsbp->StartAnimation();
继承层次结构
要求
头文件:afxribbonstatusbarpane.h
CMFCRibbonStatusBarPane::CMFCRibbonStatusBarPane
在状态栏中构造窗格对象。
CMFCRibbonStatusBarPane(
UINT nCmdID,
LPCTSTR lpszText,
BOOL bIsStatic=FALSE,
HICON hIcon=NULL,
LPCTSTR lpszAlmostLargeText=NULL);
CMFCRibbonStatusBarPane(
UINT nCmdID,
LPCTSTR lpszText,
HBITMAP hBmpAnimationList,
int cxAnimation=16,
COLORREF clrTrnsp=RGB(192,192 1,192) 1,
HICON hIcon=NULL,
BOOL bIsStatic=FALSE);
CMFCRibbonStatusBarPane(
UINT nCmdID,
LPCTSTR lpszText,
UINT uiAnimationListResID,
int cxAnimation=16,
COLORREF clrTrnsp=RGB(192, 192 1, 192) 1,
HICON hIcon=NULL,
BOOL bIsStatic=FALSE);
参数
nCmdID
[in] 指定窗格的命令 ID。
lpszText
[in] 指定要在窗格中显示的文本字符串。
bIsStatic
[in] 如果为 TRUE,则不能通过单击状态窗格来突出显示或选择它。
hIcon
[in] 指定要在窗格中显示的图标的句柄。
lpszAlmostLargeText
[in] 指定窗格可显示的最长文本字符串。
hBmpAnimationList
[in] 指定用于动画的图像列表的句柄。
cxAnimation
[in] 指定用于动画的图像列表中图标的宽度(以像素为单位)。
clrTrnsp
[in] 指定用于动画的图像列表中图像的透明色。
uiAnimationListResID
[in] 指定用于动画的图像列表的资源 ID。
CMFCRibbonStatusBarPane::GetAlmostLargeText
获取状态栏窗格可显示的最长文本字符串。
LPCTSTR GetAlmostLargeText() const;
返回值
状态栏窗格可显示的最长文本字符串。
CMFCRibbonStatusBarPane::GetTextAlign
获取状态栏窗格标签的文本对齐方式的当前设置。
int GetTextAlign() const;
返回值
当前文本对齐方式,可为下列其中一种:
TA_LEFT
TA_CENTER
TA_RIGHT。
CMFCRibbonStatusBarPane::IsAnimation
确定动画是否正在进行中。
BOOL IsAnimation() const;
返回值
如果动画正在进行,则为 TRUE;否则为 FALSE。
CMFCRibbonStatusBarPane::IsExtended
确定窗格是否位于功能区状态栏的扩展区域。
BOOL IsExtended() const;
返回值
如果窗格位于状态栏扩展区域,则为 TRUE, 否则返回 FALSE。
CMFCRibbonStatusBarPane::OnDrawBorder
有关详细信息,请参阅所安装的 Visual Studio 的 C\atlmfc\src\mfc 文件夹中的源代码。
virtual void OnDrawBorder(CDC*);
参数
[in] CDC*
注解
CMFCRibbonStatusBarPane::OnFillBackground
有关详细信息,请参阅所安装的 Visual Studio 的 C\atlmfc\src\mfc 文件夹中的源代码。
virtual COLORREF OnFillBackground(CDC* pDC);
参数
[in] pDC
返回值
备注
CMFCRibbonStatusBarPane::OnFinishAnimation
当分配给窗格的动画结束时,框架将调用此方法。
virtual void OnFinishAnimation();
备注
StopAnimation
方法调用 OnFinishAnimation
方法,可用于在动画结束时清理数据。
CMFCRibbonStatusBarPane::SetAlmostLargeText
定义可在状态栏窗格中显示且不截断的最长文本。
void SetAlmostLargeText(LPCTSTR lpszAlmostLargeText);
参数
lpszAlmostLargeText
[in] 指定可在状态栏窗格中显示且不截断的最长字符串。
备注
该库计算 lpszAlmostLargeText 指定的文本大小,并相应地调整窗格大小。 如果文本仍然无法完整放入窗格,则将被截断。
CMFCRibbonStatusBarPane::SetAnimationList
向状态栏窗格附加可用于动画的图像列表。
void SetAnimationList(
HBITMAP hBmpAnimationList,
int cxAnimation=16,
COLORREF clrTransp=RGB(192, 192 1, 192) 1);
BOOL SetAnimationList(
UINT uiAnimationListResID,
int cxAnimation=16,
COLORREF clrTransp=RGB(192, 192 1, 192) 1);
参数
hBmpAnimationList
[in] 指定图像列表的句柄。
cxAnimation
[in] 指定图像列表中帧的宽度(以像素为单位)。
clrTransp
[in] 指定图像列表的透明色。
uiAnimationListResID
[in] 指定映像列表的资源 ID。
返回值
如果图像列表已成功附加到状态栏窗格,则为 TRUE;否则为 FALSE。
CMFCRibbonStatusBarPane::SetTextAlign
设置状态栏窗格标签的文本对齐方式。
void SetTextAlign(int nAlign);
参数
nAlign
[in] 指定文本对齐方式。
注解
nAlign 可以具有下列任一值:
TA_LEFT:左对齐
TA_CENTER:居中对齐
TA_RIGHT:右对齐
CMFCRibbonStatusBarPane::StartAnimation
启动分配给窗格的动画。
void StartAnimation(
UINT nFrameDelay=500,
UINT nDuration=-1);
参数
nFrameDelay
[in] 指定动画帧速率(以毫秒为单位)。
nDuration
[in] 指定动画播放多长时间(以毫秒为单位)。 使用 -1 实现无限循环。
备注
必须先指定图像列表的句柄,然后才能使用 SetAnimationList
调用 StartAnimation
。
CMFCRibbonStatusBarPane::StopAnimation
停止分配给状态栏窗格的动画。
void StopAnimation();