第5课:对话框
概述:
对话框:是一种常见的用户界面窗口
两种添加方式:
①创建一个基于对话框的应用程序
②在项目中添加对话框资源,然后创建相应的对话框类
对话框&类:
消息对话框的显示:通过调用CWnd类的成员函数MessageBox或全局函数AfxMessageBox来实现
除此,MFC程序框架中的其他对话框的使用都是基于“类”的概念,用户创建的对话框类是从基类CDialog类派生而来的,而通用对话框则是从基类CCommonDialog派生而来的。使用时,用这些派生类定义对象,然后调用DoModal函数模式显示。当DoModal返回IDOK时,便可用对象来引用相应的数据。
模式对话框&无模式对话框:
对话框想要另作他用,往往需要添加定制代码。例如,与模式对话框对应的还有无模式对话框,它的使用与模式对话框有着本质的区别。需要说明的是,它们两者在用编辑器设计和使用MFC ClassWizard创建用户对话框类的方法是一致的,但对话框的创建和退出的方式是不同的。在创建时,模式对话框是由系统自动分配内存空间的,因此在对话框退出时,对话框对象自动删除;而无模式对话框则需要用户来指定内存以及创建和显示代码,退出时还需用户自己添加代码来删除对话框对象。
小结:
基于类概念的MFC编程方式,要求对类的构造、析构、继承和派生以及成员(包含消息映射函数)的添加等都要熟悉才行。
不过,在Visual C++中,对界面的设计均提供了“所见即所得”的编辑器,这使得操作变得非常简单。
注:下一章——控件(构成对话框界面的必备元素)