第九章基于对话框地应用.ppt
文本预览下载声明
第九章 基于对话框的应用 第九章 基于对话框的应用 9.1 基于对话框的应用概述 9.2 基于对话框应用的制作流程 9.3 几种常用控件的编程方法 9.4 一个简单计算器的设计 9.1 基于对话框的应用概述 9.1.1 基于对话框应用的特点 9.1.2 基于对话框应用的生成 9.1.3 基于对话框应用中的类 9.1.1 基于对话框应用的特点 1. 对话框的概念 2. 对话框的作用 3. 适于对话框应用的场合 1. 对话框的概念 对话框是 Windows 应用程序中的一种资源。所谓资源,是指可以被多个程序,或一个程序的多处所使用的数据、代码及其它们的组合。一个编译好的程序块、对话框模板、字体、位图等都属于资源。使用Windows资源, 可以在不必进行源代码编译的情况下改变程序的许多特征。 对话框资源在资源编辑器中编辑,它决定了对话框的组成和形态,但不能决定它的行为,后者必须由我们自己编程来实现。 2. 对话框的作用 对话框的主要作用是输出数据和接受用户数据的输入,即与用户进行“对话”。数据的输入输出是在“控件”中完成的。控件是嵌在其它父窗口中的子窗口,每种控件有其特殊的功能和用法,对话框就是依靠这些控件与用户进行信息交互。控件的大小是固定的,即不随着对话框大小的变化而变化,因此对话框一般不设置最大化和向下还原按钮,通常也不用来显示图形。 3. 适于对话框应用的场合 基于对话框的应用主要适合于输入输出都是数据的简单情况。用户通过某些控件输入数据,通过这些控件中数据的变化或对另一些控件的操作激发事件的产生,发送消息给系统,系统通过消息映射,对对话框类中的消息驱动函数产生调用来完成对数据的处理,并将处理结果通过另一些控件显示出来。在基于对话框的应用中亦可对文件和数据库进行读写,只不过读写操作不是通过“文档-视图”方式实现而已。 9.1.2 基于对话框应用的生成 在 MFC AppWizard - Step 1 中选择第三个单选按钮“Dialog based”,单击Next。 在向导接下来顺序弹出的两个对话框Step 2 of 4,Step 3 of 4,Step 4 of 4中的各个选项目前均暂可不改,前两个仅单击 Next,后一个仅单击Finish,或者在向导第一步对话框中直接单击Finish。在最后弹出的New Project Information对话框中单击OK。此时在屏幕右半部出现一个对话框模板。 9.1.3 基于对话框应用中的类 我们暂不去对该对话框模板进行编辑,先来观察一下向导为我们生成了哪些类。在左边窗口之下的三个选项卡中选择 Class View,双击窗口中的 “Mypro classes”,稍后在其下出现CAboutDlg, CMyproApp和CMyproDlg三个类名。再选择FileView选项卡,分别双击窗口中的Header Files和Source Files,下分别出现CMyproApp和CMyproDlg两个类的定义和实现文件: Mypro.h, Mypro.cpp, MyproDlg.h, MyproDlg.cpp 9.2 基于对话框应用的制作流程 9.2.1 总体设计 9.2.2 摆放控件 9.2.3 定义属性 9.2.4 建立成员变量 9.2.5 建立消息处理函数 9.2.6 生成代码框架 9.2.7 编写用户代码 9.2.1 总体设计 制作一个基于对话框的应用,首先要做好应用的总体设计:输入什么,怎样输入?输出什么,怎样输出?用哪些控件来完成输入、输出功能?各种控件怎样配合,才能使操作更加方便?各个控件怎样摆放,才能使用户界面更加美观?等等。应当注意,对于完成同一种功能的对话框而言,它的设计方案不是唯一的,最终应用的质量完全取决于设计者的美学和编程水平。 9.2.2 摆放控件 设计方案确定之后,制作的第一步就是在对话框中摆放控件。在左边的workspace窗口选中ResourceView选项卡,双击Dialog,再双击IDD_MYPRO_DIALOG打开对话框模板,从控件工具栏中选中一种控件拖动到对话框中,或单击控件选中,再在对话框中画出一个矩形。操作鼠标改变控件的大小和位置,或选中一组控件,再运行菜单Layout下的几个菜单项加以自动摆放。仔细调整格局,直到满意为止。 9.2.3 定义属性 制作的第二步就是分别定义对话框本身以及各个控件的属性。在对话框或选定的控件上单击鼠标右键,在弹出的菜单中选择Properties,或选中对话框或控件,再运行 View-Properties 菜单命令,在弹出的Xxx Properties对话框中定义对话框或控件的各种属性,包括标识ID, 标题Caption以及由复选框定义的各个选项(一般不需要改动)。ID应当大写,并且取名应便于记忆.某些Caption之后
显示全部