在窗体类中定义CStatusBar变量
private:
CStatusBar m_statusBar;
在窗体类的OnInitDialog()函数中
BOOL CTestStatusBarDlg::OnInitDialog()
{
...
// TODO: 在此添加额外的初始化代码
//定义状态栏面板的ID
UINT nID[] = {1001,1002,1003};
//创建状态栏
m_statusBar.Create(this);
//添加状态栏面板,参数为ID数组和面板数量
m_statusBar.SetIndicators(nID,sizeof(nID)/sizeof(UINT));
//设置面板序号,ID,样式和宽度,SBPS_NORMAL为普通样式,固定宽度,SBPS_STRETCH为弹簧样式,会自动扩展它的空间
m_statusBar.SetPaneInfo(0,1001,SBPS_NORMAL,80);
m_statusBar.SetPaneInfo(1,1002,SBPS_STRETCH,0);
m_statusBar.SetPaneInfo(2,1003,SBPS_NORMAL,80);
//设置状态栏位置
RepositionBars(AFX_IDW_CONTROLBAR_FIRST,AFX_IDW_CONTROLBAR_LAST,0);
//设置状态栏面板文本,参数为面板序号和对应文本
m_statusBar.SetPaneText(0,L"aaa");
m_statusBar.SetPaneText(1,L"bbb");
m_statusBar.SetPaneText(2,L"ccc");
...
}
效果: