云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > 4、菜单工具栏与状态栏

4、菜单工具栏与状态栏

  • 62 次阅读
  • 3 次下载
  • 2025/6/27 14:50:40

1.创建工具栏窗口

调用CToolBar::Create( )或CreateEx( )函数创建并初始化工具栏窗口对象。若创建成功,函数返回TRUE,否则返回FALSE。

2.装载工具栏资源

调用LoadToolBar( )函数装载工具栏资源。用Create( )或者CreateEx( )函数创建工具栏,其实只是获得了一个窗口句柄,工具栏窗口中位图按钮的加载是靠LoadToolBar( )函数来完成的。若加载成功,将返回TRUE,否则返回FALSE。 3.设置工具栏风格

如果在调用初始化函数CToolBar::Create( )或者CreateEx( )时设置的工具栏风格不满足需要,可以再用SetBarStyle( )函数重新进行设置。 4.设置工具栏停靠特性

设置工具栏停靠特性,需要调用EnableDocking( )函数。既要调用CControlBar:: EnableDocking( )函数设置工具栏的停靠特性,还要调用框架类的成员函数EnableDocking( )函数来设置框架窗口以允许它的子窗口控制栏可以以何种方式停靠。不管一个框架窗口中有多少个子窗口控制栏,该函数只需调用一次。

5. 设置工具栏的初始停靠位置

通过调用CFrameWnd::DockControlBar( )函数定位一个工具栏的初始停靠位置。 6.移动工具栏

调用CFrameWnd::FloatControlBar( )函数来移动、定位一个工具栏。 7. 工具栏隐显控制

通过对函数CWnd::SetStyle( )的调用可以改变某些工具栏窗口的风格,但该函数不能改变WS_VISIBLE,只能通过父类CWnd的ShowWindow( )成员函数来显示或隐藏工具栏。 【例4.9】编写一个单文档应用程序Li4_9。为该应用程序创建一个带有“线”、“圆”、“矩形”和“文本”4个按钮的工具栏,当用户单击工具栏上的按钮时,在窗口中显示相应的图形。

4.3 状态栏

状态栏实际上是一个窗口,安置在主窗口的下边,一般分为几个窗格,每个窗格显示不同的信息。

使用AppWizard创建的单文档应用程序,接受默认选项时,生成的应用程序自动创建带有默认窗格的状态栏。

4.3.1 状态栏类的继承关系

在MFC中,状态栏的功能由CStatusBar类实现。因此,在程序中状态栏是一个窗口型对象。

4.3.2 状态栏类的成员函数 CMainFrame类

CStatusBar m_wndStatusBar; CStatusBar类

SetPaneInfo() SetPaneText()

4.3.3 状态栏操作

利用MFC AppWizard向导创建应用程序时,首先在CMainFrame类中定义一个成员变量m_wndStatusBar,它是状态栏类CStatusBar的对象。其次在MFC应用程序框架的实现文件MainFrm.cpp中,为状态栏定义一个静态数组indicators,如下所示:

static UINT indicators[ ]= {

ID_SEPARATOR, //显示命令功能提示 ID_INDICATOR_CAPS, //显示大写锁定键状态 ID_INDICATOR_NUM, //显示数字锁定键状态 ID_INDICATOR_SCRL, //显示滚动锁定键状态 };

这个全局的提示符数组indicators中的每个元素代表状态栏上一个窗格的ID值,这些ID在应用程序的串表资源String Table中进行了说明。

通过增加新的ID标识来增加用于显示状态信息的窗格。状态栏显示的内容由数组indicators决定,需要在状态栏中显示的各窗格的标识符、位置以及个数也由该数组决定,状态栏显示的内容是可以修改的。

最后CWnd::Create( )函数以主框架窗口为父窗口创建状态栏,创建后默认停靠在主框架窗口的底部。CWnd::SetIndicators(indicators,sizeof(indicators)/sizeof(UINT))函数将创建后的状态栏分隔为sizeof(indicators)/sizeof(UINT)个窗格,窗格的ID分别为indicators数组中的元素值。

一个应用程序只有一个状态栏,所以对状态栏的操作主要是对状态栏上窗格的操作。

为了把一个窗格添加到默认的状态栏中,一般要完成下列步骤:

1 为新建窗格创建一个命令ID,在字符串资源中,增加这个字符串资源;

2 将该窗格的命令ID添加到状态栏的静态数组indicators中; 3 通过CMainFrame类成员变量m_wndStatusBar修改窗格文字。

【例4.10】编写一个单文档应用程序Li4_10。程序运行后,在状态栏中显示系统时间。

4.4 应用实例

编写一个能用不同的颜色及线宽绘制正弦与余弦曲线的应用程序。程序运行后,首先在视图窗口中显示坐标轴,然后根据用户所选择的曲线类型、颜色及线宽绘制曲线,并在状态栏中显示相关的提示信息。

见讲义“正弦余弦曲线程序”和程序curve

搜索更多关于: 4、菜单工具栏与状态栏 的文档
  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

1.创建工具栏窗口 调用CToolBar::Create( )或CreateEx( )函数创建并初始化工具栏窗口对象。若创建成功,函数返回TRUE,否则返回FALSE。 2.装载工具栏资源 调用LoadToolBar( )函数装载工具栏资源。用Create( )或者CreateEx( )函数创建工具栏,其实只是获得了一个窗口句柄,工具栏窗口中位图按钮的加载是靠LoadToolBar( )函数来完成的。若加载成功,将返回TRUE,否则返回FALSE。 3.设置工具栏风格 如果在调用初始化函数CToolBar::Create( )或者CreateEx( )时设置的工具栏风格不满足需要,可以再用SetBarStyle( )函数重新进行设置。 4.设置工具栏停靠特性

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com