CWinApp类CMultiDocTemplate类CDocument类CView类的关系
来源:互联网 发布:长征五号失利 知乎 编辑:程序博客网 时间:2024/05/16 11:25
转载请说明转自:
1.CWinApp类
它包含并管理着应用程序的文档/视窗的所有信息。它有一个成员变量CDocManager*m_pDocManager,此变量是文档/视窗的管理器;m_templateList 是CDocManager里的一个列表,此列表里保存了所有文档模板的指针,当用户调用CWinApp::AddDocTemplate(pDocTemplate)后该pDocTemplate存入了CWinApp::m_pDocManager::m_templateList这个链表里。
下面的两个函数是对 m_templateList的查找和遍历操作:
2.CDocTempplate类
一般常用其派生类CSingleDocTemplate类和CMultiDocTemplate类
(1).CSingleDocTemplate类 (继承与CDocTempplate类)
一次只能打开一个文档且对应一个视图或者多个,可以打开多种类型的文档(打开一种关闭另一种文档)
(2).CMultiDocTemplate类 (继承与CDocTempplate类)
这是一个极重要的类。CMultiDocTemplate::m_docList保存着所有该种文档的文档实例的指针列表。下面两个函数用于维护CMultiDocTemplate::m_docList数据CMultiDocTemplate::AddDocument(CDocument* pDoc);
CMultiDocTemplate::RemoveDocument(CDocument* pDoc);
而下面的两个函数用于遍例该文档类型所有文档实例。
CMultiDocTemplate::GetFirstDocPosition()const;
CMultiDocTemplate::CDocument*GetNextDoc(POSITION&rPos)const;
3.CDocument类
CDocument每一个文档实例可有多个视与之相对应。
CDocument::m_viewList用来保存所有与此文档实例相关的View
CDocument::GetDocTemplate可获得相应的文档模板例如CMultiDocTemplate类型的文档模板的实例;
4、CView类
例如在多文档视图的框架下每一个CMDIChildWnd有一个View
CView::GetDocument可获得与此视相关的CDocumentCView::GetParentFrame()可获得CMDIChildWnd;
通过以上分析可见CWinApp,CMDIChildWnd,CView,CDocument,CMultiDocTemplate之间知道其中一个实例必可知道其他所有几个实例,CWinApp统领全局,任何时候只要获得CWinApp实例,则所有的文档模板文档实例,视图,Frame窗口均可被枚举出来。AfxGetApp()获得CWinApp实例指针。
0 0
- CWinApp类CMultiDocTemplate类CDocument类CView类的关系
- 文档类CDocument子框架类CFrameWnd及视图类CView的关系及相互调用
- 文档类CDocument,子框架类CFrameWnd及视图类CView的关系及怎样相互调用
- 文档类CDocument、子框架类CFrameWnd及视图类CView的关系及如何相互调用
- 文档类CDocument,子框架类CFrameWnd及视图类CView的关系及怎样相互调用
- CWinApp、CFrame、CDocument和CView之间的互访
- CDocument类的使用
- 关于CMultiDocTemplate这个类的解释
- CwinApp,CView,Cframe之间的关系
- CWinApp类
- 在MFC中,如何获取CWinApp,CMainFrame,CChildFrame,CDocument,CView
- CDocument文档类
- CDocument文档类
- MFC文档类CDocument
- CDocument文档类
- CView类的使用
- CWinApp 应用程序类
- CWinApp 应用程序类
- c++多参数
- 在webwork的action里取request.getParameter参数
- linux下常用的几个工具 (cut, uniq, wc, grep, sort, tr, paste)
- Android读写文件、写文件到SD卡
- (5)编写function改变一片区域的宽高和颜色
- CWinApp类CMultiDocTemplate类CDocument类CView类的关系
- 黑马程序员_java异常学习总结
- hdu1025 Constructing Roads In JGShining's Kingdom (nlogn的LIS)
- make 命令
- java 获取时间
- 2014年下半年软考考试分析
- struts2 访问web元素
- PCA实训报告
- (12)异常定义(理论,理解)