C/C++远控编写第一节【8】

1.创建字符串资源  ID:  IDR_STATUSBAR_STRING

2.添加状态条变量:
        CStatusBar  m_wndStatusBar;              //状态条


3.查看MSDN:
        CStatusBar  SetIndicators      
                    BOOL SetIndicators(           //在状态条中加入对应字符串ID
                          const UINT* lpIDArray,   //字符串ID         
                           int nIDCount     //个数
                    );
        void SetPaneInfo(         //设置状态条的显示状态
                           int nIndex,     //状态条的索引
                           UINT& nID,      //状态条的字符ID
                           UINT& nStyle,    //状态条的样式
                           nt& cxWidth    //状态条的宽度
                    ) const
4.写入代码创建状态条的代码:
      (1)  创建字符ID的数组 

static UINT indicators[] =
               {
               IDR_STATUSBAR_STRING
               };

(2)添加CreatStatusBar函数并写入代码:

 if (!m_wndStatusBar.Create(this) ||
        !m_wndStatusBar.SetIndicators(indicators,
        sizeof(indicators)/sizeof(UINT)))                    //创建状态条并设置字符资源的ID
         {
        TRACE0("Failed to create status bar\n");
        return-1;      // fail to create
         }
       CRect rc;
       ::GetWindowRect(m_wndStatusBar.m_hWnd,rc);             
       m_wndStatusBar.MoveWindow(rc);                              //移动状态条到指定位置

       (3)在OnSize 中添加代码:

  if(m_wndStatusBar.m_hWnd!=NULL){    //当对话框大小改变时 状态条大小也随之改变
        CRect rc;
        rc.top=cy-20;
        rc.left=0;
        rc.right=cx;
        rc.bottom=cy;
        m_wndStatusBar.MoveWindow(rc);
        m_wndStatusBar.SetPaneInfo(0, m_wndStatusBar.GetItemID(0),SBPS_POPOUT, cx-10);
         }

此时运行:

 

5.写入状态上显示文字的代码:
.h中添加变量 int iCount

ShowMessage函数添加:

 CString strStatusMsg;
    if (strMsg.Find("上线")>0)         //处理上线还是下线消息
    {
        iCount++;
    }else if (strMsg.Find("下线")>0)
    {
        iCount--;
    }else if (strMsg.Find("断开")>0)
    {
        iCount--;
    }
    iCount=(iCount<=0?0:iCount);         //防止iCount 有-1的情况
    strStatusMsg.Format("有%d个主机在线",iCount);
    m_wndStatusBar.SetPaneText(0,strStatusMsg);   //在状态条上显示文字

6.列表中添加条目时产生日志:
      Addlist 函数中添加

  ShowMessage(true,strIP+"主机上线");

7、运行效果:

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值