新创建的view与文档绑定CCreateContext Context;
Context.m_pNewViewClass = RUNTIME_CLASS(CSwitchToView);
Context.m_pCurrentDoc   = GetActiveDocument();
Context.m_pCurrentFrame = this;
Context.m_pNewDocTemplate = Context.m_pCurrentDoc->GetDocTemplate();
Context.m_pLastView = (CView*)m_ctrlSplitter.GetPane(0, 0);
m_ctrlSplitter.CreateView(1, 0, RUNTIME_CLASS(CSwitchToView),rsize, &Context)

解决方案 »

  1.   

    首先你说的创建顺序不对:
    SDI程序中,创建顺序为:应用程序对象-->模板对象-->文档对象-->主框架-->视对象splitterwnd创建时可以以mainframe为父窗口,也可以以已经创建好的view为父窗口,看怎么用了。只有view的OnCreate完成后才能获得正确的doc指针。
      

  2.   

    : yu_hl(卖火柴的小男孩) 
    我单步执行发现它确实是先建mainframe才创建文档对象的啊??