工控编程吧

标题: 上位机MFC如何在框架中获得当前文档指针 [打印本页]

作者: qq263946146    时间: 2019-7-26 11:23
标题: 上位机MFC如何在框架中获得当前文档指针
在前面我们介绍了框架窗口内可以获取当前活动的视窗,
视窗内可以获取当道活动的文档
所以可以间接一步步实现文档指针的获取
        //获得当前子框架
        CMDIChildWnd* pChildFrame = (CMDIChildWnd*)GetActiveFrame();
        if (pChildFrame == NULL)
        {
                return;
        }

        //获得当前视图
        CDemoView* pView = (CDemoView*)pChildFrame->GetActiveView();
        if (pView == NULL)
        {
                return;
        }

        //获得当前文档
        CDemoDoc* pDoc = (CDemoDoc*)pChildFrame->GetActiveDocument();
        if (pDoc == NULL)
        {
                return;
        }

        CRect rect;
        pView->GetClientRect(rect);
        CString strText = _T("");
        strText.Format(_T("在框架中获得当前文档指针:0x%08X"), pDoc);
        CDC* pDC = pView->GetDC();
        pDC->SetTextAlign(TA_CENTER);
        pDC->TextOut(rect.Width() / 2, rect.Height() / 2, strText);


当前上边代码是在多文档中先获得子框架的指针再实现目标功能。
如果在单文档视窗的话,可以直接调用GetActiveView。






欢迎光临 工控编程吧 (https://www.gkbc8.com/) Powered by Discuz! X3.4