CStatusBarCtrl 百科内容来自于: 百度百科

CStatusBarCtrl

继承图表

继承图表

可以将此状态条控件分割为多个部分,用来显示多种类型的信息。
CStatusBarCtrl类提供了Windows通用状态条控件的性能。这个控件(也就是CStatusBarCtrl类)只对运行在Windows 95和Windows NT3.51或更新版本下的程序来说是可用的。
有关使用CStatusBarCtrl的更多信息,参见“Visual C++程序员指南”中的“控件主题”和“使用CStatusBarCtrl”。
#include <afxcmn.h>
请参阅:CToolBarCtrl

CStatusBarCtrl类成员

构造函数

CStatusBarCtrl() 构造一个CStatusBarCtrl对象。
Create() 创建状态条,并将它与CStatusBarCtrl对象连接。

属性

SetText() 设置一个状态条控件的给定部分中的文本。
GetText() 从一个状态条控件的给定部分中获取文本。
GetTextLength() 从一个状态条控件的给定部分获取文本的字符的长度。
SetParts() 设置一个状态条控件中的一部分和每部分右边的坐标。
GetParts() 获取一个状态条控件中的部分区域的数目。
GetBorders() 获取一个状态条控件的水平或垂直边界的对齐宽度。
SetMinHeight() 设置一个状态条控件的绘制区域的最小高度。
SetSimple() 指定一个状态条是显示简单的文本,还是显示前一次调用。
SetParts()设置的所有控件部分。
GetRect() 获取状态条控件中的一部分的边界矩形的尺寸。
IsSimple() 检查状态条窗口来确定它是否处于简单模式。
GetTipText() 获取状态条中的一个窗格的工具提示文本。
SetTipText() 设置状态条中的一个窗格的工具提示文本
SetBkColor() 设置一个状态条控件的背景颜色。
SetIcon() 设置状态条控件中的窗格的图表。

可重载

DrawItem() 自主绘制一个状态条控件的外观。

C++中添加状态栏

方法一

1.添加成员变量CStatusBarCtrl m_StatusBar;
2.在OnInitDialog()中加入:
m_StatusBar.Create(WS_CHILD|WS_VISIBLE|SBT_OWNERDRAW, CRect(0,0,0,0), this, 0);
int strPartDim[3]= {100, 200, -1}; //分割数量
m_StatusBar.SetParts(3, strPartDim);
//设置状态栏文本
m_StatusBar.SetText("分栏一", 0, 0);
m_StatusBar.SetText("分栏二", 1, 0);
m_StatusBar.SetText("分栏三", 2, 0);
//下面是在状态栏中加入图标
m_StatusBar.SetIcon(1,
SetIcon(AfxGetApp()->LoadIcon(IDR_MAINFRAME),
FALSE));//为第二个分栏中加的图标

方法二

1.添加成员变量CStatusBar m_wndStatusBar;
2.在OnInitDialog()中加入:
static UINT indicators[] =
{
ID_SEPARATOR, // status line indicator
ID_INDICATOR_CAPS, //CAP lock indicator.
ID_INDICATOR_NUM, //NUM lock indicator.
ID_INDICATOR_SCRL, //SCRL lock indicator.
};
if (!m_wndStatusBar.Create(this) ||
!m_wndStatusBar.SetIndicators(indicators,
sizeof(indicators)/sizeof(UINT)))
{
TRACE0("Failed to create status barn");
return -1; // fail to create
}
UINT nID; //控制状态栏里面的分栏
m_wndStatusBar.SetPaneInfo(0,nID,SBPS_STRETCH|SBPS_NOBORDERS,100);//返回值存nID中
m_wndStatusBar.SetPaneText(0,"就绪");
m_wndStatusBar.SetPaneInfo(1,nID,SBPS_NORMAL,100);
m_wndStatusBar.SetPaneText(1,"大写");
m_wndStatusBar.SetPaneInfo(2,nID,SBPS_POPOUT,100);
m_wndStatusBar.SetPaneText(2,"数字");
SetPaneInfo()函数的第三个参数的可选项如下:
// SBPS_NOBORDERS No 3-D border around the pane.
// SBPS_POPOUT Reverse border so that text "pops out."
// SBPS_DISABLED Do not draw text.
// SBPS_STRETCH Stretch pane to fill unused space. Only one pane per status bar can have this style.
// SBPS_NORMAL No stretch, borders, or pop-out.
//----------------让这个状态栏最终显示在对话框中-------------
RepositionBars(AFX_IDW_CONTROLBAR_FIRST,AFX_IDW_CONTROLBAR_LAST,0);
$firstVoiceSent
- 来自原声例句
小调查
请问您想要如何调整此模块?

感谢您的反馈,我们会尽快进行适当修改!
进来说说原因吧 确定
小调查
请问您想要如何调整此模块?

感谢您的反馈,我们会尽快进行适当修改!
进来说说原因吧 确定