我想在一个多文档界面内实现静态分割窗口,效果像VC6.0里的那样,左边是一个CTreeView,右边是一个多文档界面,我是先用AppWizard生成一个MDI的项目,然后在CMainFrame中添加一个CSplitterWnd的数据成员m_wndSplitter,然后再在CMainFrame中重载OnCreateClient函数,在里面用以下语句,m_wndSplitter.CreateStatic (this, 1, 2)然后应该怎样实现?或者,应该用什么方法来实现这个效果呢?

解决方案 »

  1.   

    VS2008以上版就有这个功能,还是用VS2010吧,向导里就有你要的这个功能,剩下的就是你加自己的视图及内容,省得你自己加这些代码了
      

  2.   

    多文档例子(分割为2个相同的yourview):BOOL CChildFrame::OnCreateClient(LPCREATESTRUCT lpcs,CCreateContext *pContext)
    {
        if(strcmp(pContext->m_pNewViewClass->m_lpszClassName,"CYourView")==0)
        {
            if(!m_wndSplitter.CreateStatic(this,1,2)) return FALSE;        
    CRect rc;
            GetClientRect(&rc);
            CSize sz=rc.Size();
            sz.cx /= 2;
            m_wndSplitter.Create(0,0,pContext->m_pNewViewClass,sz,pContext);
            m_wndSplitter.Create(0,1,pContext->m_pNewViewClass,sz,pContext);
            return TRUE;
        }
        return CMDIChildWnd::OnCreateClient(lpcs,pContext);
    }