原文链接: http://blog.chinaunix.net/uid-9847882-id-1996528.html

方法一:
1.添加成员变量CStatusBarCtrl m_StatusBar;
2.在OnInitDialog()中加入:
               m_StatusBar.Create(WS_CHILD|WS_VISIBLE|SBT_OWNERDRAW, CRect(0,0,0,0), this, 0);

int strPartDim[3]= {100, 200, -1}; //分割数量
               m_StatusBar.SetParts(3, strPartDim);

//设置状态栏文本
               m_StatusBar.SetText("分栏一", 0, 0);
               m_StatusBar.SetText("分栏二", 1, 0);
               m_StatusBar.SetText("分栏三", 2, 0);
               //下面是在状态栏中加入图标
               m_StatusBar.SetIcon(1, 
                             SetIcon(AfxGetApp()->LoadIcon(IDR_MAINFRAME),
                             FALSE));//为第二个分栏中加的图标

方法二:
1.添加成员变量CStatusBar m_wndStatusBar;
2.在OnInitDialog()中加入:
               static UINT indicators[] =
               {
                             ID_SEPARATOR,                               // status line indicator
                             ID_INDICATOR_CAPS,           //CAP lock indicator.
                             ID_INDICATOR_NUM,            //NUM lock indicator.
                             ID_INDICATOR_SCRL,           //SCRL lock indicator.
               };

if (!m_wndStatusBar.Create(this) ||
                             !m_wndStatusBar.SetIndicators(indicators,
                               sizeof(indicators)/sizeof(UINT)))
               {
                             TRACE0("Failed to create status bar\n");
                             return -1;      // fail to create
               }

UINT nID;     //控制状态栏里面的分栏
               m_wndStatusBar.SetPaneInfo(0,nID,SBPS_STRETCH|SBPS_NOBORDERS,100);            //返回值存nID中
               m_wndStatusBar.SetPaneText(0,"就绪");

m_wndStatusBar.SetPaneInfo(1,nID,SBPS_NORMAL,100);
               m_wndStatusBar.SetPaneText(1,"大写");

m_wndStatusBar.SetPaneInfo(2,nID,SBPS_POPOUT,100);
               m_wndStatusBar.SetPaneText(2,"数字");

//SetPaneInfo()函数的第三个参数的可选项如下:
             //The following indicator styles are supported:
             //            SBPS_NOBORDERS             No 3-D border around the pane.
             //            SBPS_POPOUT                               Reverse border so that text "pops out."
             //            SBPS_DISABLED              Do not draw text.
             //            SBPS_STRETCH               Stretch pane to fill unused space. Only one pane per status bar can have this style.
             //            SBPS_NORMAL                               No stretch, borders, or pop-out.

//----------------让这个状态栏最终显示在对话框中-------------
               RepositionBars(AFX_IDW_CONTROLBAR_FIRST,AFX_IDW_CONTROLBAR_LAST,0);

VC++对话框中加状态栏的更多相关文章

  1. VC++对话框中添加状态栏的方法

    方法一:1.添加成员变量CStatusBarCtrl m_StatusBar;2.在OnInitDialog()中加入:                  m_StatusBar.Create(WS_ ...

  2. 在MFC对话框中添加状态栏

    如果我们想实现在MFC对话框中添加状态栏显示,如何例如分状态栏为两列,第一列显示鼠标的当前位置,第二列显示当前的时间,(如上图). 1. 首先,打开在资源视图的String Table并添加两个ID: ...

  3. vc项目中加载多个lib遇到的问题

    一个VC项目中 在网络加密 json解析等方面  加载了多个第三方库和文件 boost cryptpp rapidjson  mysql的连接池等等 在使用mysql++的时候 多次报错 LNK 20 ...

  4. 怎样删掉vc++ 对话框中的蓝色虚线框

    选择"格式"--"切换辅助线"或者是快捷键alt+o , g

  5. VC++在对话框中加入属性页

    当一个基于对话框的程序中有相当多的控件时,你一定会想到使用属性页来将这些控件分类放置.本文针对这种方法来讨论几种可能实现的方案. 方案一本方案的例子请见源代码打包文件中的Property1部分 在对话 ...

  6. VC中加载LIB库文件的三种方法

    VC中加载LIB库文件的三种方法 在VC中加载LIB文件的三种方法如下: 方法1:LIB文件直接加入到工程文件列表中   在VC中打开File View一页,选中工程名,单击鼠标右键,然后选中&quo ...

  7. vc++ 不同对话框中传递信息的方法(基于自定义消息SendMessage) (转载)

    转载自:http://blog.csdn.net/myj0513/article/details/6827360 背景: 新建了一个基于对话框的MFC程序,在主对话框中添加tabcontrol控件,又 ...

  8. VC对话框使用OnEraseBkgnd函数位图背景并透明

    1.使用OnEraseBkgnd函数实现对话框位图背景 BOOL CDisplayBmpBackGroundDlg::OnEraseBkgnd(CDC *pDC) { CRect rect; GetC ...

  9. 【MFC】MFC改变对话框中静态文本的字体大小

    MFC改变对话框中静态文本的字体大小 2010/08/09 11:30 VC的对话框字体设置对所有控件都有效,你不能单独地改变某个静态文本的字体.对于你的问题,需要首先用CreateFont来建立一个 ...

随机推荐

  1. Asp.Net下通过切换CSS换皮肤

    直接重写Render事件 protected override void Render(System.Web.UI.HtmlTextWriter writer) { StringWriter sw = ...

  2. 微信小程序 - this.triggerEvent()

    组件之间数据通信 调用组件wxml bind+组件内的方法名 <dialog bindclose="handleClose" bindopen="handleOpe ...

  3. DbScopeFactory

    using (var db = DbScopeFactory.Create()) { //这里修改数据 db.SaveChanges(); }

  4. node中__dirname、__filename、process.cwd()表示的路径

    直接上结论:__dirname 表示当前文件所在的目录的绝对路径__filename 表示当前文件的绝对路径module.filename ==== __filename 等价process.cwd( ...

  5. Cocos2d 编译js为jsc bytecode文件

    使用: cocos jscompile -s XXX(目录名,会递归) -d (输出的目录)   但编译后的jsc比原来的js更大了     如果只是为了代码的保密性,也许只需要用yuicompres ...

  6. 获取公钥证书的DN(Distinguished Name)

    DN --  Distinguished Name,证书持有人的唯一标识符. 可以通过下面的openssl命令来打印出证书的DN. openssl x509 -subject -nameopt RFC ...

  7. 使用springMVC和Jquery实现JSONP

    JSONP这个东东是啥我就不写了,直接贴实现的代码 JAVA代码: /** * * 查询用户是否已经提交认证获取已经是认证会员 * * 使用spring mvc的直接返回string会遇到分号转义后字 ...

  8. 8、java5线程池之动态缓存线程池newCachedThreadPool

    JDK文档描述 创建一个可根据需要创建新线程的线程池,但是在以前构造的线程可用时将重用它们.对于执行很多短期异步任务的程序而言,这些线程池通常可提高程序性能.调用 execute 将重用以前构造的线程 ...

  9. django之创建第3个项目:编写第一个模板文件

    1.django结构 2.在站点blog下创建templates文件夹,专门用于存放模板文件 3.在templates文件夹下创建index.html文件 #index.html <!DOCTY ...

  10. tihs 关键字

    //this关键词 /*调用类中的属性 调用类中的方法或构造方法 调用当前对象,调用自己的方法,可以省略. */ //http://blog.sina.com.cn/s/blog_71f6c19801 ...