VC语言6.0程序设计从入门到精通-第21章
按键盘上方向键 ← 或 → 可快速上下翻页,按键盘上的 Enter 键可回到本书目录页,按键盘上方向键 ↑ 可回到本页顶部!
————未阅读完?加入书签已便下次继续阅读!
第 4 章 对话框
对话框是程序中一个常见的用户界面元素 。一个具有良好的人机交互功能的软件中,对
话框要操作简便,功能完备,信息明了,整体统一。本章将详细介绍对话框的一般创建流程,
模态和非模态的对话框、属性页对话框、各种通用对话框以及消息对话框的使用方法。为了
使读者能深入了解对话框的编程方法和使用方法,本章中给出了大量的示例,并提供了相关
类和函数的参考说明。
4。1 对话框的创建
与第 3 章菜单、加速键等 Windows 界面元素一样,对话框也是 Windows 程序的一种资
源,称作对话框模板。本节介绍对话框模板的创建和编辑方法。
4。1。1 对话框的创建流程
对话框的创建流程如图 4…1 所示,主要分为两个大步骤。
图 4…1 对话框的创建流程
创建对话框资源包括添加对话框模板、修改对话框的属性并向对话框中添加各种控件两
步。
创建对话框类包括添加控件变量和添加控件消息处理函数这两步。
实例 4…1 :创建对话框实例。源代码在光盘中“04实例 4…1Sample4_1 ”目录下。
下面的 4。1。2 和 4。1。3 小节将通过实例 Sample4_1 介绍对话框创建的各个步骤和方法。
为应用程序 Sample4_1 添加一个登录对话框。该对话框在应用程序运行的开始时弹出,提示用户
…………………………………………………………Page 71……………………………………………………………
Visual C++ 6。0 程序设计从入门到精通
输入能运行此程序的用户名和密码。如果输入正确,就可以打开程序的主窗口进入程序,
如果输入错误,则直接退出程序。
首先创建工程 Sample4_1。
(1)在 IDE 中依次选择菜单“File|New ”,或直接按快捷键 Ctrl+N,打开“New ”对话框。
(2 )在“New ”对话框中单击“Projects ”选项卡,在列表框中选择“MFC AppWizard(exe) ”
项,在“Location ”文本框中输入工程所在的目录,在“Project name ”文本框中输入“Sample4_1”,
其他使用默认值,单击“OK ”按钮,弹出“MFC AppWizard Step…1 ”对话框。
(3 )在“MFC AppWizard Step…1 ”对话框中,选中“Multiple Document ”单选框,其他
使用默认值,然后单击“Finish ”按钮,在弹出的“New Project Information ”对话框中单击“OK ”
按钮,就可以完成工程的建立。
4。1。2 创建对话框资源
创建对话框首先要创建对应的资源。以下通过实例 Sample4_1,具体地讲解如何运用对
话框编辑器创建对话框资源的方法。
1.为应用程序添加对话框
打开 Sample4_1 工程后,在 IDE 中依次选择“Insert|Resource ”菜单,打开“Insert Resource ”
对话框,在“Resource type ”属性列表框中选择 Dialog 选项,如图 4…2 所示。然后单击“New ”
按钮,为程序添加一个新的对话框,并进入对话框编辑器,如图 4…3 所示。
图 4…2 添加资源对话框
进入如图 4…3 所示对话框编辑器后,可以看到 IDE 左侧工作区窗口的“ResourceView ”
选项卡中列出的工程资源文件中添加了一个新的对话框 ID 。
技巧:在 IDE 左侧工作区窗口的“ResourceView ”选项卡中,可以选定某个资源,进行复制、粘
贴操作,可以添加与原来资源一样的新资源。例如在图 4…3 中,在 IDE 左侧工作区的
“ResourceView ”选项卡中,展开 Dialog 节点,选中 IDD_DIALOG1 ,依次选择菜单
“Edit|Copy ”或直接按 Ctrl+C 复制资源,然后依次选择菜单“Edit|Paste ”或直接按 Ctrl+V
就可以在工程资源中粘贴一个内容与 IDD_DIALOG1 一样的资源。
·62 ·
…………………………………………………………Page 72……………………………………………………………
第 4 章 对话框
图 4…3 对话框编辑器界面
2 .修改对话框属性
为 Sample4_1 添加新的对话框后,该对话框的属性都是由 IDE 设置的默认值,因此第二
步应当修改对话框的属性。将鼠标光标移动到对话框编辑器中需要编辑的对话框上,然后单
击鼠标右键打开弹出式菜单,选择“Properties ”属性,打开“Dialog Properties ”对话框,如
图 4…4 所示。
图 4…4 对话框属性编辑对话框
对如图 4…3 所示对话框的属性进行如下修改:
(1)修改对话框 ID,在“ID ”输入框中输入“IDD_LOGINDIALOG ”。
(2 )修改对话框标题,在“Caption ”输入框中输入“登录对话框”。
(3 )为了在中文系统下的美观,修改对话框字体。单击“Font ”按钮,弹出“Select Dialog
Font ”对话框,在“Font ”列表框中选择字体为“宋体”,在“Size”列表框中设置字号为 10,
单击“OK ”确认退出“Select Dialog Font”对话框。
(4 )修改完成后,回车确认修改并退出“Dialog Properties ”对话框。
·63 ·
…………………………………………………………Page 73……………………………………………………………
Visual C++ 6。0 程序设计从入门到精通
3 .在对话框中添加控件
依据实例要求,确认和取消按钮已经默认添加好了,只需要添加用户名和密码两个输入
框,并添加相应的说明。具体步骤如下:
(1)在对话框中添加一个静态文本框(Static Text )。在如图 4…3 所示的客户区右侧浮动
的 Control 工具栏中的“Static Text”控件按钮上单击,然后在对话框资源中按下鼠标左键拖
动,出现一个矩形框,松开鼠标左键,则在对话框资源中出现了一个“Static Text”控件。
另外,添加控件还可以利用鼠标将 Control 工具栏中的控件直接拖到对话框资源中。单
击对话框资源中的控件后,控件周围会出现一个虚线框,表示当前选中该控件。在控件中央
按下鼠标左键不放可以将控件拖动到指定位置,在虚线框上按下鼠标左键不放并拖动,可以
调整控件的大小 。按 Delete 键可以删除当前选中的控件 。通过这些操作将添加的“Static Text”
控件的位置和大小调整到如图 4…5 中标题为“用户名:”的静态文本框控件所示位置和大小。
图 4…5 在登录对话框中添加一个静态文本框
此时添加的“Static Text”控件,显示“Static”的字样。接着将鼠标移动到该控件上,
单击鼠标右键,在弹出菜单中选择“Properties ”,打开控件的属性编辑对话框,修改标题(在
Caption 输入框中)为“用户名 :”,如图 4…6 所示。
图 4…6 修改静态文本框的属性
(2 )在对话框中添加输入框(Edit Box ),添加过程与步骤(1)相同,但应当在 Control
工具栏中选择“Edit Box ”控件的图标,将该控件调整到与如图 4…7 所示虚线框选中的控件一
致。
图 4…7 在登录对话框中添加一个输入框
·64 ·
…………………………………………………………Page 74……………………………………………………………
第 4 章 对话框
打开控件属性编辑对话框,在 ID 输入框中将输入框的 ID 改为 IDC_LOGINNAME,如
图 4…8 所示。
图 4…8 修改输入框的属性
(3 )用步骤(1)的方法添加一个标题为“密码:”的静态文本框。
(4 )用步骤(2 )的方法添加一个 ID 为 IDC_PASSWORD 的输入框作为密码输入框,注
意修改输入框的属性为密码框。
技巧:(1)在对话框编辑界面下,可以选定一个或通过按住 Ctrl 键不放用鼠标左键单击选定多个
控件,在对话框中复制并粘贴,可以添加与原来控件外观一样的新控件。
(2 )输入框用作输入密码时,需要保证输入的字符不被回显在输入框中以防止密码被窃取,
这需要设置输入框属性为密码输入框。将鼠标移动到输入框控件上,单击鼠标左键,打开
属性编辑对话框,单击“Styles”选项卡,选中“Password ”复选框(如图 4…9 所示)。选
中此复选框后,输入框会自动将输入的字符回显为“*”。
图 4…9 设置输入框的密码属性
(5 )打开“OK ”和“Cancel ”按钮的属性编辑对话框,在“Caption ”输入框中将标题分
别改为“确认”和“取消”,并调整两个按钮的位置和对话框的大小,得到如图 4…10 所示的
登录对话框。
图 4…10 设置好界面的登录对话框
(6 )设置对话框中各种控件的响应顺序,即运行时按下 Tab 键,�