MFC中状态栏CStatusBar的使用

18 篇文章 1 订阅

##MFC界面中经常需要显示状态信息,如版本、版权,时间等,这就需要用到状态栏,在这里简单演示一下状态栏的使用操作
1、首先定义状态栏中显示的信息,方法:在资源视图中的String Table中双击,然后在String Table中点击新行,添加ID,值和标题,标题里的内容即对应将要在状态栏中显示的内容(值是按顺序的)

String Table

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、运行结果
CStatusBar运行效果

##欢迎各位高手大神批评指正,也欢迎各位同道中人留言讨论!

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值