MFC修改状态栏

   本来以为自己对MFC有所了解的,最近再写程序的时候才发现,原来我对MFC一窍不通,记录一下吧:

         第一步、先件两个字符串资源:IDS_STATESTRING1,IDS_STATESTRING2,分别用来显示提示信息和版权信息!
         第二步、创建一个数组,分别将上面的两个字符串资源ID写到里面: static UINT indicators[]= { IDS_STATESTRING1,   IDS_STATESTRING2 };
         第三步、再MFC的对话框类中添加成员变量: CStatusBar   m_wndStatusBar;
       第四步、由于创建状态栏要再主对话框创建成功以后创建,所以就再对话框初始化的时候添加吧!
    CRect rect;

    GetClientRect(rect);

     if(!m_wndStatusBar.Create( this)|| !m_wndStatusBar.SetIndicators(indicators, sizeof(indicators)/ sizeof(UINT)))
   {
          TRACE0("Can't create status bar\n");
            return  false;
    }

    m_wndStatusBar.MoveWindow(0,rect.bottom-20,rect.right,20));//  调整状态栏的位置和大小
         到这里就创建好了!
         如果要调整状态栏每个窗格的大小可以这样,比如我要调整第一个窗格的大小:m_WndStatusBar.SetPaneInfo(0,m_WndStatusBar.GetDlgCtrlID(),SBPS_NORMAL,650);
         在程序中,如果要改变制定窗格中文字的化,这样:m_WndStatusBar.SetPaneText(0,"提示:  恭喜你, 参数设置成功...");

         如果出现字符不能正常显示等问题的话,需要给这个控件添加Update处理函数:
例如:在MainFrm.h中添加 

afx_msg  void OnUpdate1(CCmdUI *pCmdUI); 

在MainFrm.cpp中添加 

ON_UPDATE_COMMAND_UI(ID_INDICATOR_1(要显示字的栏), OnUpdate1) 

实现函数:

void CMainFrame::OnUpdate1(CCmdUI *pCmdUI)
{
pCmdUI->Enable();
              好了,就这么多~~~
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值