面向对象程序设计(mfc) [兼容模式]

面向对象程序设计(mfc) [兼容模式]

ID:33590408

大小:205.43 KB

页数:13页

时间:2019-02-27

面向对象程序设计(mfc) [兼容模式]_第1页
面向对象程序设计(mfc) [兼容模式]_第2页
面向对象程序设计(mfc) [兼容模式]_第3页
面向对象程序设计(mfc) [兼容模式]_第4页
面向对象程序设计(mfc) [兼容模式]_第5页
资源描述:

《面向对象程序设计(mfc) [兼容模式]》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、8.MFC基本类库引论•Microsoft基本类(MFC)库是封装SDK结构、功能以及应用程序框架内部技术。该MFC基础部分应用程序框架隐藏过去Windows程序员不得不处理的许多重复性工作。•在封装的每一层都针对不同的应用对象封装了不同的功能。例如:CWnd,CEdit•AFX小组将全部AFX代码提供给MFC小组。大量8.1MFC的前身AFXAFX代码作为基本框架被移植到MFC内部,至今仍在MFC内。但是大部分AFX代码被废弃。•AFX(applicationframework)小组,Microsoft早先创建面向对象应用程序框架的尝试。在许多方面改造了Wi

2、ndows,使用了完全不同的窗口和图形子系统,全新的AFX的面向对象API,提供WindowsAPI高度抽象(不与Windows•同时,MFC小组编写了集成开发环境IDC以支持API兼容)。C编写的SDK不容易移植。MFC。–使用C++创建Windows应用程序的过程容易和直观–确使库能扩展以适应类的发展–更容易使用WindowsAPI特性–使用标准Windows命名约定和编码风格–用类封装WindowsAPI和Windows对象,并按照API的指引完成工作•重新回到正路,扩展C++类,封装、映象WindowsAPI,并且为面向对象Windows应用程序提供坚

3、实的基础-MFC。1•8.2MFC类层次•MFC的演变–基本类库可分为两种–1992.3MFC1.0和MicrosoftC/C++7.0同时推出,•CObject派生类16位,无doc/view结构,存在CObject和MFC•非CObject派生类类CArchive。–1993.2MFC2.0和VC++1.0同时推出,16位,CObject派生类非CObject派生类引入doc/view结构支持OLE1.0,引入消息映射,引入公用对话框。根类CObject,数组/列表/简单数据类型,支持类,–1993.7MFC(32位)1.0版本随同NT3.1同时映像类,调

4、试和异常类,绘图典型模板类,OLE类,结构推出。和打印类,文件和数据库类,类,同步类–1993.8MFC2.1和VC++(32位)同时推出。Internet和网络类,MFC应用程序结构类,窗口/对话框/控–1993.12最后的16位VC++件类–1994.9VC++2.0和32位MFC3.0推出。•8.3CObject类:MFC的根•数组,列表,映射类(动态收缩和扩展)–从CObject派生的MFC子系统•调试和异常类(CDumpContext提供诊断转储的目CObject的地,CMemoryState提供捕捉内存使用状态,CException捕获代码异常)文

5、件服务•图形类CDC应用程序结构屏显•文件和数据库类(CFile,CDatabase,窗口支持图形服务CRecordset…)控件支持•WindowSockets(插件)和Internet服务类对话框图形对象(InternetServerAPI,ISAPI,使用WinSocket通菜单信)视图同步对象•控件类(CListCtrl…)控件•菜单CMenuWindows插件框架窗口数组,列表,映射2•8.4非CObject派生类•支持类(CWaitCusor类仅将光标变为沙漏,–OLE类(COle前缀)CRectTracker类,通过使用缩放句柄允许用户在–简单数

6、据类型类屏幕上对各项移动和调整大小)•同步类(CSemaphore信号量,CMutex互斥量,类说明CCriticalSection临界量,CEvent事件)CImageList存储或归档同样大小的•类型模板类图象集CPointSDKPOINT结构,x,y坐标对CRectSDKRECT结构,矩形面积坐标CSize封装距离,相对位置,成对值ProgramEntryPoint•关于APP类的全局MFC函数CWinApp::InitApplication()InitializeApplicationWinMain()–AfxGetAppCWinApp::InitIn

7、stance()InitializeApp•返回指向CWinApp对象指针InitializeInstanceInitializeInstance–AfxGetAppNamePumpMessage•返回指向包含应用程序名的字符串指针CWinApp::Run()–AfxGetInstanceHandlePumpMessage•返回当前应用程序实例句柄Quit?–AfxGetResourceHandle•返回当前应用程序的资源句柄CWinApp::ExitInstace()3•系统定义的消息宏前缀•消息的取值范围前缀消息分类消息类型取值范围BM按钮控制消息系统定义

8、消息(部分I)0x0000到0x03F

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。