首页 理论教育MFC视频教程:对话框栏编辑与调用方法

MFC视频教程:对话框栏编辑与调用方法

【摘要】:对话框栏是类似于工具栏的非模式对话框,不但可以在资源视图中编辑内部控件,而且启动后可以停靠在框架类周边方便使用。打开本章第5节的“sp”分隔栏工程,用于演示对话框栏的编辑和调用方法。表14-7 主对话框的控件属性8)通过类向导为对话框栏创建一个CDialog派生类,如图14-41所示。图14-41 创建对话框栏的关联类9)在刚建立的CAddrBar头文件中,把“CDialog”改为“CDialogBar”,如图14-42所示。改变主框架窗口的大小,对话框栏内控件的位置自动调整。

对话框栏(CDialogBar类)是类似于工具栏的非模式对话框,不但可以在资源视图中编辑内部控件,而且启动后可以停靠在框架类周边方便使用。打开本章第5节的“sp”分隔栏工程,用于演示对话框栏的编辑和调用方法。

1)在资源视图中通过菜单命令,或者按快捷键<Ctrl+R>打开插入资源对话框,如图14-35所示。选中树形控件中的“IDD_DIALOGBAR”节点,再单击“New”按钮添加对话框栏资源。

2)修改刚插入的对话框栏属性,如图14-36所示。

978-7-111-46378-8-Chapter14-65.jpg

图14-35 插入资源

978-7-111-46378-8-Chapter14-66.jpg

图14-36 修改对话框属性

3)修改对话框默认的语言为“ChineseP(.R.C)”,如图14-37所示。

978-7-111-46378-8-Chapter14-67.jpg

图14-37 修改对话框语言

4)修改对话框属性,如图14-38所示。

978-7-111-46378-8-Chapter14-68.jpg

图14-38 修改对话框属性

5)修改对话框栏字体为“宋体”“10”,如图14-39所示。

978-7-111-46378-8-Chapter14-69.jpg

图14-39 修改对话框字体

6)在对话框栏中添加一些控件,如图14-40所示。

978-7-111-46378-8-Chapter14-70.jpg

图14-40 编辑对话框栏资源

7)修改控件属性,见表14-7。

表14-7 主对话框的控件属性

978-7-111-46378-8-Chapter14-71.jpg

8)通过类向导为对话框栏创建一个CDialog派生类,如图14-41所示。

978-7-111-46378-8-Chapter14-72.jpg

图14-41 创建对话框栏的关联类

9)在刚建立的CAddrBar头文件中,把“CDialog”改为“CDialogBar”,如图14-42所示。

978-7-111-46378-8-Chapter14-73.jpg

图14-42 在头文件中替换基类(www.chuimin.cn)

10)在刚建立的CAddrBar源文件中,把“CDialog”改为“CDialogBar”,如图14-43所示。

978-7-111-46378-8-Chapter14-74.jpg

图14-43 在源文件中替换基类

11)修改CMainFrame类的头文件,添加一个CAddrBar类型成员变量

978-7-111-46378-8-Chapter14-75.jpg

12)修改主框架类的OnCreate函 数,在函数末尾添加以下代码。

978-7-111-46378-8-Chapter14-76.jpg

13)编译并运行,测试程序,如图14-44所示。

978-7-111-46378-8-Chapter14-77.jpg

图14-44 查看运行结果

14)在CAddrBar类中,添加WM_SIZE消息映射函数并修改代码。

978-7-111-46378-8-Chapter14-78.jpg

978-7-111-46378-8-Chapter14-79.jpg

15)编译并运行,测试程序。

改变主框架窗口的大小,对话框栏内控件的位置自动调整。

16)在主菜单内添加一个菜单项,用于显示和隐藏地址栏,如图14-45所示。

978-7-111-46378-8-Chapter14-80.jpg

图14-45 编辑主菜单资源

17)通过类向导,在CMainFrame类中添加菜单项的命令和更新消息映射函数,如图14-46所示。

978-7-111-46378-8-Chapter14-81.jpg

图14-46 添加菜单项的消息映射函数

18)修改菜单项消息映射函数的代码。

978-7-111-46378-8-Chapter14-82.jpg

19)编译并运行,测试程序。单击菜单项显示和隐藏地址栏,如图14-47所示。

978-7-111-46378-8-Chapter14-83.jpg

图14-47 查看运行结果