欢迎来到天天文库
浏览记录
ID:19694962
大小:252.50 KB
页数:41页
时间:2018-10-05
《最新microsoft类库基础(mfc)ppt模版课件》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第4章Microsoft类库基础(MFC)引言MFCAPPWizard创建应用程序的类型:对话框应用程序单文档应用程序多文档应用程序方法:示例:4.4MFC基础什么是MFCMFC(MicrosoftFoundationClass):微软基础类库,是用来编写Windows应用程序的C++类集。其中封装了大部分WindowsAPI函数、数据结构、宏和Window控件,并以对象的形式提供给用户。4.4MFC基础MFC的特点:该类集以层次结构组织封装了WindowsAPI和Windows控件MFC向应用程序提供了访问API的一种模拟面向对象的访问方式。在MFC程序中,程序员很少需要直
2、接调用API函数,而是通过定义MFC类的对象并调用对象的成员函数来实现相应的功能。使用MFC提高代码重用性。大大简化Windows编程,提高效率MFC类结构MFC类结构CObjectCCmdTargetCWinThreadCDocTemplateCDocumnetCWndCSingleDocTemplateCWinAppCMutiDocTemplateCFrameWndCViewCContolBarCMDIFrameWndCTooBareCStatusBarCMDIChildWnd多数MFC类是从三个基类(BaseClass)派生的:4.4.1三大基类CObjectCCmdT
3、argetCWndCobject:根类CCmdTarget:命令相关类CWnd:窗口类1.根类(Cobject)CObject类的概念CObject类是MFC的抽象基类提供许多编程所需要的公共操作CObject提供的操作:对象的建立和删除支持序列化(serializationsupport)运行时(Run-time)对象诊断输出(objectdiagnosticoutput)与容器类兼容(compatibilitywithcollectionclasses)序列化和运行时序列化序列化是指将对象写入永久性存储媒体(如磁盘文件)或从其中读取对象的进程两个重要函数:Serializ
4、e和IsSerialize运行时允许程序检索对象的类名和其他信息重要的两个函数:IsKindOf和GetRuntimeClass2.命令相关类(CCmdTarget)命令相关类(CCmdTarget)的概念是所有具有消息映射类的基类作用消息映射规定了当一对象接收消息命令时,应调用那一个函数对给消息进行处理。3.窗口类(CWnd)该类提供了MFC中所有窗口类的基本功能该类的成员函数封装了负责创建和维护窗口的WindowsAPI函数CWnd类派生于CCmdTarget4.4.2应用类1.应用程序类(CWinApp)2.应用程序框架类(CFrameWnd)3.文档、视图类(CDoc
5、ument/Cview)4.文档模板类(CDocTemplate)1.应用程序类(CWinApp)CWinApp类封装了应用程序的初始化、运行和终止应用程序代码。负责初始化并运行应用程序,运行中与其他对象协调工作应用程序类是应用程序运行时创建的第一个对象,并最后一个终止基于框架生成的应用程序必须有且仅有一个从CWinApp派生的类的对象。CWinApp类层次关系图1.应用程序类(CWinApp)续CwinApp三个实现基本功能的函数:InitInstance:负责初始化应用程序Run:进行消息循环,获取发送给应用程序的消息并调用响应的消息处理函数,直到WM_QUIT。没消息执
6、行OnIdle函数。ExtiInstance:是在Run中调用的,一旦收到WM_QUIT消息就执行它有可用的消息吗?空闲处理OnIdle()有可用的消息吗?还有空闲任务吗?等待消息Get/Translate/DispatchYYNNYNRun成员函数的消息循环2.应用程序框架类(CFrameWnd)对于SDI或MDI程序都有一个“主框架窗口”负责显示并跟踪用户命令以及显示应用程序主窗口。对于SDI应用程序框架类派生于CFrameWnd类对于MDI应用程序框架类则派生于CMDIFrameWnd类子框架都派生于CMDIChildWnd类CFrameWnd类层次关系图CWndCFr
7、ameWndCMDIFrameWndCMDIChildWnd3.文档、视图类CDocument/CViewCDocument类层次关系:CView类层次关系:CObjectCCmdTargetCDocumentCObjectCCmdTargetCWndCView文档类(Cdocument)什么是文档?应用程序的数据(文本文件、图象文件或二进制文件等)必要性文档类的工作:负责将文档加载到文档类的成员变量中,并允许视图类编辑这些成员变量。视图使用这些变量访问数据以用于显示和更新。文档默认序列化机制管理从文件
此文档下载收益归作者所有