状态栏编程

在VC编程中,有时需要将一些信息显示在状态栏里,下面将在状态栏里添加信息的步骤整理如下:

1)
在资源Resource的StringTable中添加字符串标志,例如ID_ONMAP_CURRENT_LOCATION   61477  当前位置

2)
在MainFrm.cpp中indicators的定义中添加字符串标志
static UINT indicators[] =
{
 ID_SEPARATOR,           // status line indicator
 ID_ONMAP_CURRENT_LOCATION,  //添加部分
 ID_INDICATOR_CAPS,
 ID_INDICATOR_NUM,
 ID_INDICATOR_SCRL,
};

3)
在需要改变状态栏的地方添加
        CString str;
 CMainFrame* pMainFrame = (CMainFrame*)(AfxGetApp()->m_pMainWnd);
 CStatusBar* pStatusBar = &(pMainFrame->m_wndStatusBar);
        if(NULL != pStatusBar)
 {
  str.Format("longitude = %f   latitude = %f ",dfXn,dfYn);  //添加字符串的格式
  CClientDC dc(this);
  CSize sz=dc.GetTextExtent(str); //获得添加字符串的占的大小
               pStatusBar->SetPaneInfo(1,ID_ONMAP_CURRENT_LOCATION,SBPS_NORMAL,sz.cx);//1为索引,ID                                                                                     //,样式,大小
  pStatusBar->SetPaneText(1,str);
 }
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值