manarex 发表于 2023-8-13 10:03:57

MFC窗口增加状态栏的方法与代码


在窗体类中定义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");
      ...
}
页: [1]
查看完整版本: MFC窗口增加状态栏的方法与代码