版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第3章 MFC应用程序,MFC是微软基于Windows API构建的一个应用程序框架。使用该框架开发Windows应用程序,不仅可以缩短软件的开发周期,而且也便于维护。本章主要学习如何利用向导来创建一个MFC应用程序,以及MFC应用程序的执行流程。,3.1 MFC概述,当第一次看到MFC这个名词的时候,往往会因为陌生而产生莫名的害怕。它是Microsoft Foundation Classes的缩写,意思就是微软基础类库。MFC是一个程序架构,简单的理解就是微软的技术大牛们把Windows API函数进行封装,然后用一些精妙绝伦的技巧把它们联系在一起,最后整理出的一套几乎适用于所有应用程序的框
2、架。我们基于这个框架和类库进行编程可以大大缩短我们的开发周期。 MFC之所以具有成为应用程序框架的资格,最重要的一个特征就是它能够将管理数据的程序和负责数据显示的程序代码分离出来。这就是MFC引入的“文档/视图”结构,理解这个结构是编写基于MFC程序的关键。,3.2 快速创建MFC应用程序,这一节,我们利用VC+6.0集成开发环境提供的向导来创建一个MFC应用程序,并介绍创建过程每一个选项的作用。最后为其添加代码实现输出“Hello World!”。,3.2.1 利用MFC AppWizard创建项目,1.选择应用程序界面类型 2.选择数据库支持类型 3.选择ActiveX技术支持类型 4.选
3、择界面风格 5.其它选项 6.确认类名和文件名,3.2.2 为创建好的MFC程序添加代码,可以看到,MFC AppWizard 为用户生成了一个相当完善的标准Windows应用程序框架。该程序窗口拥有自己的菜单、工具栏和状态栏,可以移动位置或缩放大小。但是它不能完成任何任务,就像我们上一章中用Windows API编写的窗口程序框架一样,它还需要用户进行进一步的完善。在这个应用程序框架的基础上,完成自己特殊需要的功能。,3.3 MFC程序的执行流程概述,我们在利用Windows API函数编写应用程序时,一定还记得WinMain()函数和用来处理消息循环的窗口过程WndProc()函数。这种应
4、用程序的运行过程是比较容易理解的,WinMain()函数是应用程序的入口。在该函数中完成程序的初始化工作,然后进入消息循环,具体的消息由窗口过程函数中的switch/case语句处理,直至应用程序结束运行。但是,我们在浏览Hello应用程序的代码时,并找到没有找到WinMain()函数。,3.3 MFC程序的执行流程概述,MFC应用程序的初始化是在InitInstance()函数中完成的,操作系统向应用程序发送的消息则由消息映射表映射到特定的函数进行处理。如果进一步深入地研究MFC的源代码,可以发现WinMain()函数还是存在的,只是MFC对此进行了封装,使得用户不需要直接处理WinMain
5、()函数。在应用程序启动的时候,应用程序框架将调用 WinMain()函数。该函数执行一些标准的初始化过程,如注册窗口类、创建窗口等;然后该函数将调用应用程序对象的成员函数,初始化应用程序并进入应用程序的消息循环。,3.3 MFC程序的执行流程概述,在初始化应用程序对象的时候,WinMain()函数将调用应用程序类的成员函数InitApplication()和InitInstance()成员函数;接着调用应用程序类的Run()成员函数进入消息循环;在应用程序终止的时候,WinMain()调用应用程序类的ExitInstance()成员函数退出应用程序。,3.3 MFC程序的执行流程概述,3.4 小结,本章首先对MFC的定义做了简要的概述;然后利用App Wizard创建了一个单文档的MFC应用程序,并介绍了每一步各选项的作用;最后对MFC执行流程做了简要的概述。本章的重点内容是理
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 教会消防安全工作制度
- 教室卫生安排工作制度
- 教师居家一日工作制度
- 教师评优评先工作制度
- 教职工上下班工作制度
- 教育局信访室工作制度
- 教育机构督导工作制度
- 敬老志愿服务工作制度
- 整治非法用工工作制度
- 人教部编版(2024)七年级下册卖油翁教学设计及反思
- 2026江苏苏州市常熟市莫城街道(服装城)国有(集体)公司招聘13人备考题库附答案详解ab卷
- 数据变化趋势的刻画课件2025-2026学年冀教版数学八年级下册
- 教育强国建设三年行动计划(2025-2027年)
- 20S515 钢筋混凝土及砖砌排水检查井
- 26届3月广东高三·思想政治
- 2026年山区复杂地形无人机起降点选址技术指南
- 2026届苏锡常镇高三语文一模作文评分细则及标杆文:卓越源于有目的、有反馈的重复
- 《必背60题》 区域经济学26届考研复试高频面试题包含详细解答
- 律所反洗钱内部控制制度
- (新教材)2026年春期人教版三年级下册数学教学计划+教学进度表
- 某农村综合性改革试点试验实施方案
评论
0/150
提交评论