CMFCStatusBar选件类
CMFCStatusBar 选件类实现状态栏类似于 CStatusBar 选件类。 但是,CMFCStatusBar 选件类具有 CStatusBar 选件类未提供的功能,例如能够为显示图像、动画和进度栏;并能够响应鼠标双击。
class CMFCStatusBar : public CPane
成员
公共方法
名称 |
说明 |
---|---|
|
|
创建一个控件条并将它附加到 CPane 对象。 (重写 CPane::Create。) |
|
创建一个控件条并将它附加到 CPane 对象。 (重写 CPane::CreateEx。) |
|
确定另一个窗格是否可以动态插入此窗格和父框架。 (重写 CBasePane::DoesAllowDynInsertBefore。) |
|
启用或禁用处理在状态栏上双击。 |
|
显示在指定的窗格的一个进度栏。 |
|
返回窗格数在状态栏中。 |
|
|
|
|
|
|
|
|
|
|
|
|
|
返回窗格样式。 (重写 CBasePane::GetPaneStyle。) |
|
|
|
返回宽度,以像素,状态栏中指定的窗格。 |
|
返回状态栏中指定的窗格的工具提示文本。 |
|
无效指定的窗格并重画其内容。 |
|
调用由框架在Windows窗口中先前创建附加到此 CWnd 对象。 (重写 CWnd::PreCreateWindow。) |
|
|
|
|
|
动画分发到指定的窗格。 |
|
设置状态栏中指定的窗格的背景色。 |
|
设置状态栏中指定的窗格的指示器图标。 |
|
|
|
设置进度栏的活动进程状态栏中指定的窗格中。 |
|
设置窗格的样式。 (重写 CBasePane::SetPaneStyle。) |
|
|
|
设置状态栏中指定的窗格的文本颜色。 |
|
设置在状态栏中指定的窗格的像素宽度。 |
|
设置状态栏中指定的窗格的工具提示文本。 |
受保护的方法
名称 |
说明 |
---|---|
调用由框架,则重绘状态栏的窗格。 |
备注
下图显示状态栏以从 状态栏演示示例 应用程序的。
示例
下面的示例演示应用程序使用缩放在 CMFCStatusBar 选件类中的各种方法的局部变量。 这些变量在StatusBarDemoView.h声明。 主框架在MainFrm.h声明,文档在StatusBarDemoDoc.h声明,因此,视图。StatusBarDemoView.h声明。 此代码段是 状态栏演示示例的一部分。
int m_nProgressCurr;
BOOL m_bInProgress;
CImageList m_imlStatusAnimation;
BOOL m_bInAnimation;
CBitmap m_bmpIcon1;
CBitmap m_bmpIcon2;
下面的示例演示 CMFCStatusBar 对象演示如何获取引用传递介绍MainFrm.h的 GetStatusBar 然后调用方法从 GetStatusBar 方法的此方法在StatusBarDemoView.h。 此代码段是 状态栏演示示例的一部分。
// in MainFrm.h
public:
CMFCStatusBar& GetStatusBar ()
{
return m_wndStatusBar;
}
...
// in StatusBarDemoView.h
CMFCStatusBar& GetStatusBar () const
{
return ((CMainFrame*) AfxGetMainWnd ())->GetStatusBar ();
}
下面的示例演示如何调用 CMFCStatusBar 选件类中的各种方法。StatusBarDemoView.cpp。 常数。MainFrm.h声明。 此示例演示如何设置图标,设置状态栏窗格的工具提示文本,显示在指定的窗格的一个进度栏,将动画分发到指定的窗格中,设置文本和状态栏窗格的宽度,并将进度栏的当前进度显示状态栏窗格中。 此代码段是 状态栏演示示例的一部分。
// in MainFrm.h
const int nStatusIcon = 0;
const int nStatusInfo = 1;
const int nStatusProgress = 2;
const int nStatusLabel = 3;
const int nStatusAnimation = 4;
...
// in StatusBarDemoView.cpp
GetStatusBar ().SetPaneIcon (nStatusIcon, m_bmpIcon1);
GetStatusBar ().SetTipText (nStatusIcon, _T("This is a tooltip"));
...
GetStatusBar ().EnablePaneProgressBar (nStatusProgress, PROGRESS_MAX);
...
GetStatusBar ().SetPaneAnimation (nStatusAnimation, NULL);
...
GetStatusBar ().SetPaneAnimation (nStatusAnimation, m_imlStatusAnimation);
GetStatusBar ().SetPaneText (nStatusAnimation, _T(""));
GetStatusBar ().SetPaneWidth (nStatusAnimation, 16);
...
GetStatusBar ().SetPaneProgress (nStatusProgress, m_nProgressCurr);
继承层次结构
要求
标头: afxstatusbar.h