《轻松学VisualC之单文档应用程序.pptx》由会员分享,可在线阅读,更多相关《轻松学VisualC之单文档应用程序.pptx(10页珍藏版)》请在三一办公上搜索。
1、第8章 单文档应用程序,单文档是一种常见的文件处理程序,如Windows自带的记事本和画图程序等。相对于对话框简单的拖放控件,单文档程序具有很强的文件读取显示功能。单文档程序的核心是文档视图结构,文档用于读取和保存数据。视图用于数据的显示和编辑。本章将基于单文档应用程序对MFC框架进行剖析,探讨其内部组织结构。,8.1 创建一个单文档程序,下面,我们将利用MFC AppWizard来创建一个项目名为FirstSingle的单文档应用程序,创建过程中间的一些属性设置暂且不必理会。,8.2 单文档程序框架剖析,这一节我们基于单文档程序对MFC框架进行剖析,使读者对MFC有进一步了解。MFC(Mic
2、rosoft Foundation Classes)是一个微软公司提供的类库,是一种应用程序框架。目前程序开发人员大都基于这一框架进行Windows程序开发。,8.2.1 生成的类和资源,单击工作环境中ClassView选项卡,可以看到系统为我们生成的5个类,如图下图所示。其中,有2个类和对话框程序中生成的是相同的。,8.2.1 生成的类和资源,单击工作环境中的Resource选项卡,可以可视化编辑和查看系统为我们生成的各种资源。单文档程序所用的资源,如下图所示。,8.2.2 各类的详细信息,这一小节就上面出现的5个类进行详细介绍。1.CAboutDlg 这是一个“关于”对话框类,该对话框用于
3、显示软件的版本等信息。2.CFirstSingleApp 该类是主应用程序类,是CWinApp的派生类。主应用程序类的封装用于Windows应用程序的初始化、运行和终止。3.CFirstSingleDoc 该类是一个文档类,是CDocument的派生类。4.CFirstSingleView 该类是视图类,是CView的派生类。5.CMainFrame 该类是一个框架类,派生于CFrameWnd类,表示应用程序的主框架窗口。,MFC框架程序分析,本小节基于单文档应用程序,对一般的MFC框架程序的生命周期进行分析,使读者对MFC框架程序的构成有整体的了解。1.theApp全局对象 theApp对象
4、标志着整个对象,每个MFC应用程序都有一个,而且也仅有一个。2.AfxWinMain()函数 当程序调用了CWinApp类的构造函数,使得theApp配置完成后,接下来就进入了WinMain()函数。3.InitInstance()函数 从AfxWinMain()代码可知,在AfxWinInit()之后的操作是InitApplication()。AfxWinInit()会做一些内部初始化工作。4.Run()函数 在运行Run()函数之前,系统已经完成了注册窗口类、创建窗口、显示和更新窗口的工作,所以这时就应该进入消息循环了。,8.2.4 文档/视图框架,单文档程序除了有主框架窗口以外(CMainFrame),还有一个窗口是是视图窗口(CView)。主框架窗口是视图窗口的一个父窗口。主框架窗口就是整个应用程序外框所包括的部分,而视图类窗口只是主框架窗口中空白的地方,如下图所示。,8.3 显示键盘字符例子,下面,我们来编写一个简单的获得键盘字符并通过视类显示的小例子。通过这个小例子,让读者对文档和视图有一定的感性理解。,8.4 小结,本章主要介绍了单文档应用程序的创建、生成的类、各类的详细信息、MFC程序的框架以及文档/视图结构,最后通过一个小例子简要展示了文档类和视图类的关系。MFC程序框架及执行流程,文档/视图结构是本章的重点也是难点内容。后面会在例子中进一步对其进行接触。,