预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共73页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

第4章对话框及常用控件对话框及常用控件4.1对话框概述4.1.1 对话框简介4.1.2 对话框的分类4.1.3 对话框的组成 4.1.3 对话框的组成(续)4.2 对话框程序的创建4.2.1 一个对话框程序4.2.2 创建对话框资源模板4.2.2 创建对话框资源模板(续)4.2.3 利用对话框类CDialog操纵对话框2.利用类向导添加对话框类的成员变量 为了对编辑框输入的数据进行控制,需要在对话框类中增加与这些控件有关的类的成员变量。 按Ctrl+W打开类向导对话框,选择MFCClassWizard对话框中的MemberVariable标签,然后在ClassName栏中选择对应的CPassWordDlg对话框类,此时在下面该类的变量列表中会出现该对话框中的各控件的资源ID号。双击ControlsIDs列表中的编辑框控件的资源ID号ID_EDIT_USERNAME,在Category栏中选择Value(值变量)(还有一种控件型变量Control),在ValueType栏中选择CString类型。这些操作的界面如图4.5所示。用用样的方法再增加一个变量m_strPassword。利用对话框类CDialog操纵对话框(续)4.2.4 初始化对话框4.2.4 初始化对话框(续)4.2.4 初始化对话框(续)4.2.4 初始化对话框(续)4.2.5 对话框的调用4.2.5 对话框的调用(续)4.2.5 对话框的调用(续)4.2.6 对话框的消息处理4.2.6 对话框的消息处理(续)【例4-2】在前述程序的基础上,通过发送消息DM_SETDEFID将密码对话框中的缺省按钮设置为“确定”,在WM_INITDIALOG的消息响应函数中将“取消”按钮的大小改变,同时处理“用户名称”编辑框的通知消息EN_CHANGE。步骤如下: (1)利用类向导添加对话框类CPassWordDlg对WM_INITDLG的消息映射函数OnInitDialog(),并编写代码如下:点击进入代码 (2)利用类向导添加编辑框控件IDC_EDIT_USERNAME的通知消息EN_CHANGE的响应函数OnChangeEditUsername(),并编写代码如下:点击进入代码4.3 标准Windows控件4.3.1 控件简介4.3.1 控件简介(续)4.3.2 静态控件4.3.2 静态控件(续)4.3.2 静态控件(续)4.3.3 按钮控件4.3.3 按钮控件(续)4.3.3 按钮控件(续)4.3.3 按钮控件(续)4.3.3 按钮控件(续)4.3.4 编辑控件 4.3.4 编辑控件(续)4.3.4 编辑控件(续)4.3.4 编辑控件(续)4.实例 【例4-3】一个演示静态文本控件、按钮控件和编辑框控件的程序。它能求数一和数二的最大公约数和最小公倍数。 (1)创建一个基于对话框的应用程序GcdExam,向导生成的每个步骤都使用缺省的。 (2)在对话框资源IDD_GCDEXAM_DIALOG中添加控件如图4.9所示,并设置控件的属性如表4.6所示。 例4-3(续)4.3.5 列表框控件4.3.5 列表框控件(续)4.3.5 列表框控件(续)4.3.5 列表框控件(续)4.3.5 列表框控件(续)4.3.5列表框控件(续)4.3.6 组合框控件4.3.6 组合框控件(续)4.3.6 组合框控件(续)4.3.6 组合框控件(续)4.3.6 组合框控件(续)例4-4例4-4(续)例4-4(续)4.3.7 控件的类型无关访问4.3.7 控件的类型无关访问(续)4.3.7 控件的类型无关访问(续)4.3.7 控件的类型无关访问(续)4.3.8 动画控件4.3.8 动画控件(续)例4-6例4-6(续)习题习题(续)图示(1)图示(2)图示(3)图示(4)图示(5)图示(6)图4.13动画控件的属性设置窗口图