MFC 应用、模板、框架、文档、视图 的关系

从该对象

如何访问其他对象

全局函数

调用全局函数AfxGetApp可以得到CWinApp应用类指针

应用

AfxGetApp()->m_pMainWnd为框架窗口指针;用CWinApp::GetFirstDocTemplatePostion、CWinApp::GetNextDocTemplate来遍历所有文档模板

文档

调用CDocument::GetFirstViewPosition,CDocument::GetNextView来遍历所有和文档关联的视图;调用CDocument::   GetDocTemplate 获取文档模板指针

文档模板

调用CDocTemplate::GetFirstDocPosition、CDocTemplate::GetNextDoc来遍历所有对应文档

视图

调用CView::GetDocument   得到对应的文档指针; 调用CView::GetParentFrame 获取框架窗口

文档框架窗口

调用CFrameWnd::GetActiveView   获取当前得到当前活动视图指针; 调用CFrameWnd::GetActiveDocument 获取附加到当前视图的文档指针

MDI 框架窗口

 获取当前活动的MDI子窗口(CMDIChildWnd)

1)调用CMDIFrameWnd::MDIGetActive      2)调用CMDIFrameWnd::GetActiveFrame(); 

 MDI  子窗口

1)获取当前活动MDI子窗口的活动视图:CMDIChildFrameWnd:GetActiveView();

2)获得当前活动MDI子窗口的活动文档:CMDIChildFrameWnd:GetActiveDoc();

原文地址:https://www.cnblogs.com/vranger/p/3173945.html