- 1、本文档共58页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Windows程序设计教程 第4章 MFC应用程序框架 如果把设计Windows应用程序所需要的API函数和数据封装成类,然后根据类的3大特性来开发程序,则会大大提高程序的编程效率。 而MFC通过C++语言的类,恰恰实现了对大部分Windows API的封装。 通过MFC中专门的类,可以快速地创建应用程序的框架。 本章将对MFC应用程序框架中的知识点进行详细介绍。 4.1 应用程序向导AppWizard MFC应用程序向导AppWizard是Visual Studio环境中的可视化编程工具。 使用AppWizard可以迅速创建应用程序的框架。 用户只需在此框架的基础上编程,即可实现所需的特定功能。 4.1.1 创建应用程序框架 4.1.2 编译运行应用程序 在4.1.1节中,经过一系列的操作创建了一个应用程序框架。 选择菜单栏中【Build】选项,出现弹出式菜单,如图4.9所示。 单击【Build】|【Build HelloWorld.exe】命令编译程序,然后单击【Build】|【Execute HelloWorld.exe】命令运行程序。 运行结果如图4.10所示。 4.1.3 查看生成文件信息 在编译运行程序后,在程序的创建目录下生成了一系列与程序有关的文件。 这些文件的扩展名各有不同,如图4.11所示。 MFC AppWizard为HelloWorld应用程序生成了4个相关类: (1)CHelloWorldApp:应用程序类,其主要用于程序的初始化及结束处理; (2)CHelloWorldDoc:文档类,其主要用于应用程序中数据的存储、修改与管理; (3)CHelloWorldView:视图类,其主要用于人机交互并显示数据; (4)CMainFrame:主窗口类,其主要用于主窗口的创建、显示及消息的派发。 各个类的相关信息如表4.2所示。 4.2 使用项目工作区 工程是应用程序开发的基本单位。 在Visual C++中,项目工作区将应用程序中的类、资源、消息处理函数分类,用类视图、资源视图和文件视图3个窗口展示给用户。 项目工作区如图4.12所示。 工作区由3个标签组成,分别为ClassView(类视图)、ResourceView(资源视图)和FileView(文件视图)。 通过使用工作区中的树控件,可以找到相应的代码和资源。 例如,双击ClassView中树控件相应的函数名,可以找到相应的代码段。 在ResourceView中显示相应的资源,如对话框、图标、菜单、加速键、工具栏、版本信息等。 3个视图分别如图4.13所示。 4.3 MFC应用程序的基本类 在MFC的众多类中,其大多数类都是从CObject、CCmdTarget和CWnd中派生出来的。 其中,CObject类是所有MFC类的原始基类,CCmdTarget类是从CObject类派生出来的,而CWnd又是从CCmdTarget类派生出来的。 MFC中的基本类如图4.14所示。 4.3.1 CObject类 CObject类是MFC类库的基类,MFC中的类大多数都是直接或是间接从它派生出来的。 CObject类本身并不提供什么功能,主要是通过内部宏来完成实际的工作。 CObject类的派生类有3个基本特性:持久性(Serialization)、诊断性(Diagnostic)和动态性(Run-time)。 4.3.2 窗口、对话框、控件类 CWnd类是所有窗口类的基类。 所谓的窗口,不仅仅指人们平时所看到的MFC框架中的窗口,对话框和控件也属于特殊的窗口。 下面对MFC中典型的窗口、对话框以及控件做简单介绍。 1.窗口 这里的窗口是指MFC框架中的两个主要窗口:框架窗口和视图类窗口。 框架窗口的作用是为应用或应用的一部分充当框架,它通常还包含其他的窗口,如视图、工具栏以及状态栏等。 CframeWnd类是框架窗口的基类,CframeWnd类直接支持单文档界面(SDI)。 对于多文档界面(MD
文档评论(0)