MFC界面中经常需要显示状态信息,如版本、版权,时间等,这就需要用到状态栏,在这里简单演示一下状态栏的使用操作
1、首先定义状态栏中显示的信息,方法:在资源视图中的String Table中双击,然后在String Table中点击新行,添加ID,值和标题,标题里的内容即对应将要在状态栏中显示的内容(值是按顺序的)
2、在Dlg.h文件中定义状态栏类
CStatusBar m_Statusbar; //状态栏类
3、在Dlg.c文件中的OnInitDialog()函数中添加状态栏初始化操作
m_Statusbar.Create(this); //创造状态栏m_Statusbar.SetIndicators(indicators,3); //设置状态栏项目栏数CRect rect;GetClientRect(&rect); //Size the two panes//伸缩窗格以填满空间,第一栏显示IDS_STRING_MESSAGE内容,即“状态栏” ,0表示默认长度 m_Statusbar.SetPaneInfo(0,IDS_STRING_MESSAGE,SBPS_STRETCH,0);//窗格突出显示,第二栏长度为320单位,显示IDS_STRING_VERSION字符串 m_Statusbar.SetPaneInfo(1,IDS_STRING_VERSION,SBPS_POPOUT,320); m_Statusbar.SetPaneInfo(2,IDS_STRING_TIME,SBPS_POPOUT ,120); //第三栏长度120单位RepositionBars(AFX_IDW_CONTROLBAR_FIRST,AFX_IDW_CONTROLBAR_LAST, IDS_STRING_TIME);//指定状态栏在显示窗口位置SetTimer(2,1000,NULL); //一个1秒触发一次的定时器
联系客服