- 1、本文档共13页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
MFC框架说明
1、MFC简介
MFC,微软基础类(Microsoft Foundation Classes),是微软提供的用于在C++环境下编写应用程序的一个框架和引擎,是对API函数的专用C++封装,微软做了大量的封装,隐藏了许多内部实现,简化了开发人员的工作量。
MFC (Microsoft Foundation Class Library)中的各种类相互结合起来构成了一个应用程序框架,它的目的就是让程序员在此基础上来建立Windows下的应用程序,这是一种相对SDK来说 更为简单的方法。因为总体上,MFC框架定义了应用程序的轮廓,并提供了用户接口的标准实现方法,程序员所要做的就是通过预定义的接口把具体应用程序特有 的东西填入这个轮廓。Microsoft Visual C++提供了相应的工具来完成这个工作:AppWizard可以用来生成初步的框架文件(代码和资源等);资源编辑器用于帮助直观地设计用户接 口;ClassWizard用来协助添加代码到框架文件;最后,编译,则通过类库实现了应用程序特定的逻辑。
2、系统所用的MFC类的层次图
这个图是从MFC类图中所截取的,程序用到的MFC类的一个层次图,从这个图中,可以理解到系统所用到的控件或者类的一个相互关系。
(1)CWinApp类
每个应用程序从类 CWinApp 派生出自己的应用程序类,并定义一个全局的对象。该应用程序类包含了 Windows 下 MFC 应用程序的初始化、运行和结束过程。基于框架建立的应用程序必须有一个(且只能有一个)从 CWinApp 派生的类的对象。
CWinApp 所包含的数据成员主要用于存放和控制应用程序本身的信息,主要数据成员如下。
数据成员名称
作用入描述
m_pszAppName
指定了应用程序名称
m_hInstance
标识了应用程序的当前实例
m_lpCmdLine
指示一个以 NULL结尾的字符串,指向应用程序的命令行
m_nCmdShow
指示最初如何显示窗口
m_pszExeName
应用程序的模块名称
m_pszHelpFilePath
应用程序的帮助文件路径
m_pszProfileName
应用程序对应的.ini文件名
除了CWinApp的成员函数以外,微软基础类库还提供了以下全局函数,用于访问你的CWinApp对象以及其它全局信息:
全局函数名称
功能及描述
AfxGetApp
获得指向CWinApp对象的指针。
AfxGetInstanceHandle
获得当前应用程序实例的句柄。
AfxGetResourceHandle
获得应用程序资源的句柄。
AfxGetAppName
获得一个字符串指针,其中包含了应用程序的名字。
主要的函数功能说明:
InitInstance()函数用于初始化实例。Windows 下对同一个应用程序可以运行多个实例。例如,如果已经在运行资源管理器,用户还可以再一次或多次启动资源管理器,这样,系统中就有两个或多个资源管理器在运行,这些运行着的资源管理器就是资源管理器应用程序的多个运行实例。当每次启动某个应用程序的一个实例时,WinMain()函数都要调用 InitInstance()函数。
(2)CWnd类
CWnd类提供了微软基础类库中所有窗口类的基本功能。CWnd对象与Windows的窗口不同,但是两者有紧密联系。CWnd对象是由CWnd的构造函数和析构函数创建或销毁的。另一方面,Windows的窗口是Windows的一种内部数据结构,它是由CWnd的Create成员函数创建的,而由CWnd的虚拟析构函数销毁。DestroyWindow函数销毁Windows的窗口,但是不销毁对象。
CWnd类和消息映射机制隐藏了WndProc函数。接收到的Windows通知消息通过消息映射被自动发送到适当的CWnd OnMessage成员函数。程序开发者可以在派生类中重载OnMessage成员函数以处理成员的特定消息。
使用CWnd类同时还能够为应用程序创建Windows的子窗口。先从CWnd继承一个类,然后在派生类中加入成员变量以保存与你的应用程序有关的数据。在派生类中实现消息处理成员函数和消息映射,以指定当消息被发送到窗口时应该如何动作。
程序开发者可以经过两个步骤来创建一个子窗口。首先,调用构造函数CWnd以创建一个CWnd对象,然后调用Create成员函数以创建子窗口并将它连接到CWnd对象。当用户关闭你的子窗口时,应销毁CWnd对象,或者调用DestroyWindow成员函数以清除窗口并销毁它的数据结构。
在微软基础类库中,从CWnd派生了许多其它类以提供特定的窗口类型。这些类中有许多,包括CFrameWnd,CMDIFrameWnd,CMDIChildWnd,CView和CDial
您可能关注的文档
最近下载
- 2023-2024学年河南省信阳市高一下学期7月期末数学试题(含解析).pdf VIP
- 2025年中考物理总复习《温度计的使用》专项测试卷(附答案).pdf VIP
- 中化泉州石化过程安全管理实践-胡福磊.pdf VIP
- 2023-2024学年河南省信阳市高一下学期7月期末数学试题(含解析).docx VIP
- 全国高校黄大年式教师团队申报表范例.docx VIP
- DBJ51_T 062-2016 四川省旋挖钻孔灌注桩基技术规程.docx
- 黑龙江职业学院单招职业适应性测试题库(含答案).pdf VIP
- 研学旅行服务合同.doc VIP
- 学校食堂情况介绍.docx VIP
- 疼痛的护理 PPT课件.ppt VIP
文档评论(0)