dede 网站打开自动加html,做网站的软件项目进度计划,公司注册资金可以乱写吗,招聘网站建设策划书一、类继承关系 从图中可知#xff0c;在MFC中大多数的类都派生于CObject类#xff0c;它的主要作用是为子类提供一些基本的功能#xff0c;这些派生类构成了MFC应用程序的基本框架#xff0c;它们各自的功能描述如表1所示。 派生类 功能描述 CCmdTarget 用于处理用户请…一、类继承关系 从图中可知在MFC中大多数的类都派生于CObject类它的主要作用是为子类提供一些基本的功能这些派生类构成了MFC应用程序的基本框架它们各自的功能描述如表1所示。 派生类 功能描述 CCmdTarget 用于处理用户请求 CWinThread 代表应用程序内部的执行线程 CWinApp 应用程序的核心 CWnd 为所有的窗口类提供基本的功能处理常见的系统消息 CView 用于显示数据并与文档对象进行交互 CFrameWnd 应用程序的主框架 CDocument 包含应用程序的数据集
二、具体的功能
下面将对上述表中各个类的功能进行具体的讲解。
1CCmdTarget类
CCmdTarget类是MFC的消息映射基础类MFC为该类设计了许多的成员变量及函数以解决消息映射的问题。派生于CCmdTarget的类可用于处理当用户选择菜单或单击按钮等操作时所产生的Command消息。
在实际的开发过程中我们通常很少直接从CCmdTarget中派生类。当想要生成一个处理按键消息的类时只需从继承于CCmdTarget类的框架子类CView、CWinApp、CDocument、CWnd和CFrameWnd中选择一个来充当父类即可。
2CWinThread类
CWinThread类是MFC中用于封装线程的类它的成员函数可以使MFC应用程序创建和管理包括UI及工作者在内的线程。每个MFC应用程序都至少应该使用一个从CWinThread派生的类应用程序类CWinApp就是一个代表。
3CWinApp类
CWinApp类通常代表应用程序自己它封装了应用程序的初始化、运行及终止的过程。基于框架的应用程序必须有且仅有一个派生于CWinApp的类的对象并在完成窗口的创建工作之前执行对该对象的构造。
应用程序类的对象需要完成以下工作。
初始化应用程序。
建立文档模板结构。
循环检索消息队列中的消息并将这些消息发送到指定的地方。
执行应用程序退出时的清理工作。
4CDocument类
CDocument类是在使用文档/视图结构的应用程序中文档对象的基类它为应用程序的文档对象提供了基本的功能包括新建、串行化数据等。
5CWnd类
CWnd类是所有MFC 窗口的基类它封装了窗口的基本操作包括窗口的创建、销毁、设置窗口风格等以及窗口对大部分消息的默认响应。开发人员可以直接从CWnd派生其他类但通常情况下我们并不这么做而是通过继承CWnd的派生类生成新类。
6CFrameWnd类
CFrameWnd类往往用于创建应用程序的主窗口并定义了大量管理视图和文档对象的成员函数及变量。在编写文档/视图结构的应用程序时视图对象等将作为CFrameWnd的子窗口实现对客户区的共享并被CFrameWnd有序排列。
7CView类
CView类是在使用文档/视图结构的应用程序中视图对象的基类它是用户的主要操作界面。在应用程序中一个视图对象通常只对应一个文档对象但一个文档对象却可以关联多个视图对象并且每个视图对象都以不同的形式来显示文档中的数据。
在上述CObject类的派生类中CWinApp类、CDocument类、 CCmdTarget类及CWinThread类构成了应用程序的结构类代表了应用程序的基本结构元素。换句话说当一个应用程序开始运行时这些类将最先实现初始化。
在类的层次结构中应用程序类CWinApp是一个基于MFC应用程序的最外层对象容器它不仅拥有诸如实例句柄等需要被传送到WinMain()函数中去的参数还包含了应用程序的主框架窗口当主框架窗口被关闭时应用程序也就跟着结束了。因此开发人员必须为程序创建一个全局的应用程序对象。
参考
https://www.cnblogs.com/shuzhongke/p/15439957.html
MFC文档视图框架(各个类之间的关系)