工控编程吧
标题: 上位机MFC如何在文档模板中遍历文档 [打印本页]
作者: qq263946146 时间: 2019-7-26 12:35
标题: 上位机MFC如何在文档模板中遍历文档
多文档程序可以同时打开众多视窗,每个对应一个文档处理类。
我们可以访问这些文档类
例如通过调用下面代码实现
- void CMy123App::OnAll()
- {
- // TODO: Add your command handler code here
- POSITION pos = GetFirstDocTemplatePosition();
- CMultiDocTemplate* pDocTemp = (CMultiDocTemplate*)GetNextDocTemplate(pos);
- int n = 0;
- //获得第一个文档的位置
- POSITION pos1 = pDocTemp->GetFirstDocPosition();
- while(pos1 != NULL)
- {
- n++;
- //获得下一个文档
- CDocument* pDoc = pDocTemp->GetNextDoc(pos1);
- //更新视图
- pDoc->UpdateAllViews(NULL, n);
- }
- }
复制代码 为了显示效果,我们可以在视窗类中添加虚函数以示标识
- void CMy123View::OnUpdate(CView* pSender, LPARAM lHint, CObject* pHint)
- {
- CRect rect;
- GetClientRect(rect);
- CString strText = _T("");
- strText.Format(_T("文档%d"), lHint);
- CDC* pDC = GetDC();
- pDC->SetTextAlign(TA_CENTER);
- pDC->TextOut(rect.Width() / 2, rect.Height() / 2, strText);
- }
复制代码
(, 下载次数: 0)