基于对话框的MFC程序中添加状态栏

编程入门 行业动态 更新时间:2024-10-25 12:16:57

基于<a href=https://www.elefans.com/category/jswz/34/1761322.html style=对话框的MFC程序中添加状态栏"/>

基于对话框的MFC程序中添加状态栏

1.创建一个基于对话框的程序

2.在对话框类中添加公有成员

CStatusBar m_wndStatus;

3.在资源视图中添加string Table资源

例如:我们添加下面三个

接下来我们在cpp文件开始部分添加下面数组

static UINT indicators[]={
ID_TEST1,
ID_TEST2,
ID_TEST3,
};

 

在Initstance函数中添加如下代码

if(!m_wndStatus.Create(this)||!m_wndStatus.SetIndicator(indicators,3))
{
MessageBox(_T("未能成功创建状态栏"));
}

4.接下来有最重要的一步就是添加下面这条语句

RespositionBar(AFX_IDW_CONTROLBAR_FIRST,AFX_IDW_CONTROLBAR_LAST,0);

这个语句的作用就是让这个状态栏根据窗口大小自动调整最终显示在对话框中(在文档程序中不必要)

 

5.我们来修改状态栏每一个栏目的大小和上面显示的内容

用到两个函数分别为SetPaneInfo()和SetPaneText()

函数原型如下

void SetPaneInfo(int nIndex, UINT nID, UINT nStyle, int cxWidth);

nIndex:状态栏的编号,从0开始

nID:ID

nStyle:风格

                 SBPS_NOBORDERS 窗格周围无三维边框

                  SBPS_POPOUT 窗格突出显示

                  SBPS_DISABLED 不画文本

                  SBPS_STRETCH 伸缩窗格以填满空间(只能有一个)

                   SBPS_NORMAL 不伸缩,无边框,不凸显

cxWidth:状态栏长度

BOOL SetPaneText(int nIndex, LPCTSTR lpszNewText, BOOL bUpdate = TRUE);

nIndex:编号

lpszNewText:要显示的文本

 

更多推荐

基于对话框的MFC程序中添加状态栏

本文发布于:2024-02-27 02:34:57,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1704879.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:对话框   状态栏   程序   MFC

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!