Add CSplitterWnd Object in your Frame Class(CMainFrame in SDI,CChildFrame in MDI),in the Frame function OnCreateClient you add these code:
VERIFY(m_wndSplitter.CreateStatic(this,1,2));
VERIFY(m_wndSplitter.CreateView(0,0,RUNTIME_CLASS(CYourTreeView),CSize(100,100),pContext));
VERIFY(m_wndSplitter.CreateView(0,1,RUNTIME_CLASS(CYourEditView),CSize(100,100),pContext));
return TRUE;

解决方案 »

  1.   

    又是老问题,建议去看
    http://expert.csdn.net/Topic/31139.shtm
    上的回答,你的答案都在里面。
      

  2.   

    对不起,我忘了说一点:我想在程序运行时动态的把EditView切换成ListView。象quace这样的做法视图配置是不能改变的。
      

  3.   

    你可以用quace的方法创建分割窗口,然后将不想出现的窗口大小设为0不就行了?
      

  4.   

    一边是TreeView,一边是EditView向导就可以完成。
    动态切换视图见:http://codeguru.earthweb.com/misc/winpe.shtml有详细的说明和源代码下载,一个文档对应了五六个不同的视图,随时可以切换。
      

  5.   

    创建时
    VERIFY(m_wndSplitter.CreateStatic(this,1,2));
    VERIFY(m_wndSplitter.CreateView(0,0,RUNTIME_CLASS(CYourTreeView),CSize(100,100),pContext));
    VERIFY(m_wndSplitter.CreateView(0,1,RUNTIME_CLASS(CYourEditView),CSize(100,100),pContext));
    return TRUE;
    切换时
    switch(nWhichView)
    {
    case 1:
    m_wndSplitter.DeleteView(0,0);
    VERIFY(m_wndSplitter.CreateView(0,1,RUNTIME_CLASS(CYourEditView),CSize(100,100),pContext));
    break;
    case 2:
    m_wndSplitter.DeleteView(0,0);
    VERIFY(m_wndSplitter.CreateView(0,1,RUNTIME_CLASS(CYourListView),CSize(100,100),pContext));
    break;
    明白了吗