第4章 对话框和公用控件.ppt_第1页
第4章 对话框和公用控件.ppt_第2页
第4章 对话框和公用控件.ppt_第3页
第4章 对话框和公用控件.ppt_第4页
第4章 对话框和公用控件.ppt_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第4章 对话框和公用控件,对话框用于显示信息以及接受来自用户的输入。对话框通过利用诸如编辑控件、列表框、按钮控件等Windows控件来执行这一任务。这些控件有时称为“子控件”,因为它们通常作为对话框的子控件而创建。MFC封装了对话的类(CDialog)和几个可放在对话框上的不同控件,提供了一种面向对象的编程方式来使用对话和控件。本章知识点包括: 模态和非模态对话框 Windows控件资源 对话框及控件的使用,4.1 模式对话框和非模式对话框,对话框有很多种类型,并且每一种类型的对话框都有其特殊的用途。下面将讨论两种对话框:模式对话框和无模式对话框。模式对话框是最普通的对话框类型,这种对话框在没

2、有消失之前会阻止应用程序其他部分的运行,禁止到父窗口的用户输入。无模式对话框当其被打开时,也允许应用程序的其他部分运行,允许用户输入到其父窗口。无模式对话框的一个例子就是Developer Studio中的查找和替换对话框。,4.1.1 使用对话编辑器,Visual Studio包括几个资源编辑器,可用来创建Windows应用程序的不同资源。这些编辑器中的对话编辑器是用于创建并编辑对话模板,当应用程序运行时,对话框根据该模板进行创建。使用对话编辑器可以实现以下这些事情: 创建新对话模板 编辑对话模板属性 在对话中添加控件或从对话中删除控件 组织和缩放对话的控件 编辑对话控件的属性 设置对话控件

3、的制表次序 测试对话,4.1.2 CDialog类,如果使用MFC开发对话框应用程序,必然涉及到两个MFC类:CDialog类和CDataExchange类。本节重点介绍CDialog类。CDialog类封装了两类对话的功能:模式和非模式。当显示一个模式的对话框时,Windows禁止了对话框的父窗口的用户输入。相反,当显示一个非模式对话框时,Windows允许用户输入到对话框的父窗口。下面介绍如何使用CDialog类创建一个模式对话框。,4.1.3 对话框的数据交换和校验,一旦有了对话框,就要考虑如何实现从对话框中获得数据,传递给应用程序的变量或者文件,反之亦然。对话数据交换可以使程序员和用户

4、在CDialog派生类中创建成员函数,该类与对话模板的控件关联。DDX变量有两个类别:控件和值。DDX控件类可以把MFC中的控件类和对话上的适当控件相联系。例如,对话框上的一个文本框可以和CEdit类的一个成员变量关联起来。,4.1.4 创建一个对话框应用程序,为了更好地完成本节的介绍,重新创建一个对话框应用程序DlgTest。,4.2 Windows控件资源,作为一个Windows应用程序的开发者,一定会和控件打交道,如按钮控件、列表框控件、文本框控件、组合框控件、进度条控件,树形视图等。为了简化Windows编程者的工作,微软将这些通用控件设计为Windows操作系统的一部分。本节就详细介

5、绍Windows操作系统中的部分常用控件。,4.2.1 按钮控件,按钮控件是Windows系统中可使用的最灵活的控件。按钮是一种包含文本或者位图标识的特殊窗口,经常出现在对话框、工具条或者是其他包含控件的窗口中。常见的按钮有下压按钮(Pushbuttons)、单选按钮(Radio buttons)、复选框(Check boxes),分组框(Group boxes)。下面以下压按钮为例,详细介绍按钮的使用方法。对于按钮控件,使用最多的方式就是“单击”。所以需要给应用程序添加单击按钮的消息处理函数。,4.2.2 文本框控件,文本框控件的基本功能就是用来实现数据输入。下面继续使用例程DlgTest来

6、说明文本框控件的使用。,4.2.3 列表框和组合框,列表框控件的基本功能用来让用户从大量的可能选项中进行选择。组合框是列表框控件和编辑框控件的组合。下面继续使用例程DlgTest来说明这两个控件的使用。 1列表框控件 2组合框控件,4.2.4 进度条控件,进度条控件通常用来说明一个操作的进度,并在操作完成时从左到右将进度控件填满。进度条控件可以用于各种“测量”和“进度”。进度条控件是非常容易向用户显示任务状态的方法,用户可以非常容易地观察项目的进度。下面继续使用项目DlgTest来讲述进度条控件的使用方法。,4.2.5 滑块控件,滑块控件是一个包含可以在两端之间移动的滑块的控件。滑块控件用在W

7、indows的控件面板的显示中。用户使用鼠标拖动滑块或者将焦点设在键盘上,通过箭头来移动滑块。下面继续使用项目DlgTest来讲述滑块控件的使用方法。,4.3 对话框及控件的使用,本章的前面各小节逐步地讲述了对话框的种类以及使用,还讲述了常用的Windows公用控件。在本节,将对DlgTest进行详细地讲解和研究。本项目的功能包括对话框程序的简单使用及按钮控件、文本控件、列表框和组合框控件、进度条控件、滑块控件的使用。,4.3.1 创建DlgTest工程,下面讲解创建DlgTest工程。,4.3.2 对话框项目Dlgtest的结构。,项目DlgTest包含了三个类:CAboutDlg、CDlg

8、TestApp、CDlgTestDlg。本节讲述这三个类的作用。通过讲述这三个类的作用帮助读者掌握基于对话框应用程序的开发。CAboutDlg是用来实现“关于对话框”的,CDlgTestApp是应用程序类,是程序对外的接口类,被用户或操作系统调用。CDldTestDlg类是用来实现对话框界面以及用户交互的。,4.3.3 CAboutDlg类,CAboutDlg类是用来实现“关于DlgTest”对话框,是编程开发环境自动创建的。运行对话框工程,鼠标放到对话框界面上部的蓝色长条部位,单击鼠标右键,弹出菜单。选择【关于DlgTest (A)】命令,弹出【关于DlgTest】对话框。,4.3.4 CD

9、lgTestApp类,CDlgTestApp类是整个程序的基础。它是对话框应用程序和操作系统的接口,被操作系统直接调用。 下面给出CDlgTestApp类的详细的源代码清单,以备读者查阅。 1头文件Dlgtest.h 2CPP文件DlgTest.cpp,4.3.5 CDlgTestDlg类,通过4.2节的方法,给对话框添加各种控件,除了【Button1】按钮和【驱动】按钮,其他控件分别添加相应类型的变量及消息。 1头文件DlgTestDlg.h 2Cpp文件DlgTestDlg.cpp,4.3.6 运行示例,通过4.3.1节至4.3.5节的学习和工作,基本完成了项目DlgTest。编译并运行程序。测试项目中各种控件的使用方法。,4.4 小结,本章主要讲述了对话框和公用控件的知识和使用。关于对话框,主要讲述了模态对话框和非模态对话框,对话框类CD

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论