在多文档视图中,加入定时器,然后在class CMainFrame : public CMDIFrameWnd类中的函数OnTimer(UINT nIDEvent) 中加入如下代码:CreateNewChild(RUNTIME_CLASS(CChildFrame), IDR_TESTTYPE, 0, 0);子窗口可以被打开,但是不像第一个窗口中显示初始视图,而是空白一片。我想让后来打开的窗口和启动编译后的程序自己打开的窗口是一样的。该如何做?
调试欢乐多
void CMainFrame::OnUpdateViewScrolltoline(CCmdUI* pCmdUI)
{
CMDIChildWnd* pMDIActive = MDIGetActive();
if (pMDIActive == NULL)
{
pCmdUI->Enable(FALSE);
return;
}
CDocument* pDoc = pMDIActive->GetActiveDocument();
ASSERT(pDoc != NULL);
}
不过,愚认为,他还不是完全解决这个问题的办法。void CMainFrame::OnUpdateViewScrolltoline(CCmdUI* pCmdUI)
{
CMDIChildWnd* pMDIActive = MDIGetActive();
if (pMDIActive == NULL)
{
pCmdUI->Enable(FALSE);
return;
}
CDocument* pDoc = pMDIActive->GetActiveDocument();
ASSERT(pDoc != NULL);
/////////////////////////////////////////
CMyView *pView = (CMyView *)pDoc->m_nMyView;
pView->OnInitialUpdate();
//其中m_nMyView是你在CDocument 中定义的那个View变量。
}