扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
从该对象 | 如何访问其他对象 |
全局函数 | 调用全局函数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 框架窗口 | 调用CMDIFrameWnd::MDIGetActive 获取当前活动的MDI子窗口(CMDIChildWnd) |
CMyApp *pMyApp = (CMyApp*)AfxGetApp(); //得到应用程序指针 POSITION p = pMyApp->GetFirstDocTemplatePosition();//得到第1个文档模板 while (p != NULL) //遍历文档模板 { CDocTemplate *pDocTemplate = pMyApp->GetNextDocTemplate(p); POSITION p1 = pDocTemplate->GetFirstDocPosition();//得到文档模板对应的第1个文档 while (p1 != NULL) //遍历文档模板对应的文档 { CDocument *pDocument = pDocTemplate->GetNextDoc(p1); POSITION p2 = pDocument->GetFirstViewPosition(); //得到文档对应的第1个视图 while (p2 != NULL) //遍历文档对应的视图 { CView *pView = pDocument->GetNextView(p2); } } } |
图6.1 多文档/视图框架MFC程序的组成 |
图6.2 文档/视图框架程序类的层次关系 |
图6.3文档/视图的三种关系 |
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者