锐英源软件
第一信赖

精通

英语

开源

擅长

开发

培训

胸怀四海 

第一信赖

当前位置:锐英源 / 英语翻译 / MFC文档视图关系翻译
服务方向
人工智能数据处理
人工智能培训
kaldi数据准备
小语种语音识别
语音识别标注
语音识别系统
语音识别转文字
kaldi开发技术服务
软件开发
运动控制卡上位机
机械加工软件
软件开发培训
Java 安卓移动开发
VC++
C#软件
汇编和破解
驱动开发
联系方式
固话:0371-63888850
手机:138-0381-0136
Q Q:396806883
微信:ryysoft

锐英源精品开源心得,转载请注明:“锐英源www.wisestudy.cn,孙老师作品,电话13803810136。”需要全文内容也请联系孙老师。英文原文


MFC类

就理解MFC而言,首要目标是MFC的文档/视图架构,理解的方法要点在于用于控制互相关系的类。下面是这些类的关系图:

文档视图架构

本图只是一个对框架的简单化的描述,它没有考虑视图类之间的差异性等等,这个差异框架也支持。

我们能够一眼看到只有一个CWinApp类的对象。这个对象包含有一个CDocManager对象,这个CDocManager对象是MFC里用来处理所有CDocTemplate对象,而CDocTemplate对象是通过框架注册的。CWinApp对象同样创建了CMainFrame对象,这个CMainFrame对象是程序的主窗口。每次程序里打开/创建个文档,一个对应类型的CDocument对象会创建。CDocument对象的指针会保存到对应的CDocTemplate对象内部的列表里,CDocTemplate对象在程序启动时按类型注册上。当你打开个文档,CMainFrame创建一个CChildFrame对象(一个MDI窗口),这个CChildFrame对象用于显示文档的视图。一个CView对象同样以CChildFrame的子窗口形式创建出来,它的指针保存到打开的文档对象的视图列表里。如果你创建你文档的额外的视图,额外的CChildFrame也会创建出来,里面寄生的有对应的视图。这个新的视图的指针也会保存到相关文档对象的视图列表里。

CDocManager类

该MFC类并没有提供文档支持。MFC用它来管理CDocTemplate/CMultiDocTemplate的列表对象。在MFC应用里只有一个此类的对象。有需要,你也可以从它派生出你的CDocManager类,为了要实现派生,你必须在MFC创建它自己的成员变量前,创建和设置m_pDocManager成员。看如下的函数:

这个函数遍历CDocTemplate列表对象,检查文件的扩展名是否匹配这些CDocTemplate对象。如果匹配,且文件没有打开,会创建一个且打开,类型和匹配的CDocTemplate一样。在字符串资源里定义的文档类型会使用到创建文件的扩展名里。如果你以如下代码注册了CDocTemplate:

友情链接
版权所有 Copyright(c)2004-2024 锐英源软件
统一社会信用代码:91410105098562502G 豫ICP备08007559号 最佳分辨率 1440*900
地址:郑州市金水区文化路97号郑州大学北区院内南门附近