##MFC界面中经常需要显示状态信息,如版本、版权,时间等,这就需要用到状态栏,在这里简单演示一下状态栏的使用操作
1、首先定义状态栏中显示的信息,方法:在资源视图中的String Table中双击,然后在String Table中点击新行,添加ID,值和标题,标题里的内容即对应将要在状态栏中显示的内容(值是按顺序的)
2、在Dlg.h文件中定义状态栏类
CStatusBar m_Statusbar; //状态栏类
3、在Dlg.c文件中添加定义
static UINT indicators[] = //添加状态栏:消息、标志,时间
{
IDS_STRING_MESSAGE,
IDS_STRING_VERSION,
IDS_STRING_TIME
};
4、在Dlg.c文件中的OnInitDialog()函数中添加状态栏初始化操作
m_Statusbar.Create(this); //创造状态栏
m_Statusbar.SetIndicators(indicators,3); //设置状态栏项目栏数
//伸缩窗格以填满空间,第一栏显示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秒触发一次的定时器
5、定时器函数SetTimer()详见本人博客
http://blog.csdn.net/qq_33723441/article/details/54599022
6、运行结果
##欢迎各位高手大神批评指正,也欢迎各位同道中人留言讨论!