我想静态拆封分为:3行,且第2行又拆分为2列,即:
----------------------
|                    |
|                    |
----------------------
|         |          |
|         |          |
----------------------
|                    |
|                    |
----------------------如何写代码?谢谢!我这么写没有实现这个样子BOOL CMainFrame::OnCreateClient(LPCREATESTRUCT lpcs, CCreateContext* pContext)
{
    // TODO: Add your specialized code here and/or call the base class
    if( !m_wndSplitter.CreateStatic(this, 3, 1) ||
        !m_wndSplitter.CreateView(0, 0, RUNTIME_CLASS(CMyEditView), CSize(128, 128), pContext) ||
        !m_wndSplitter.CreateView(1, 0, RUNTIME_CLASS(CMyEditView), CSize(128, 128), pContext) ||
        !m_wndSplitter.CreateView(2, 0, RUNTIME_CLASS(CMyEditView), CSize(128, 128), pContext)
        )
    {
        return false;
    }    if( !m_wndSplitter2.CreateStatic(m_wndSplitter.GetPane(1, 0), 1, 2) ||
        !m_wndSplitter2.CreateView(0, 0, RUNTIME_CLASS(CMyEditView), CSize(0, 0), pContext) ||
        !m_wndSplitter2.CreateView(0, 1, RUNTIME_CLASS(CMyEditView), CSize(0, 0), pContext)
        )
    {
        return false;
    }    return true;
}

解决方案 »

  1.   

     if( !m_wndSplitter.CreateStatic(this, 3, 1) ||
            !m_wndSplitter.CreateView(0, 0, RUNTIME_CLASS(CMyEditView), CSize(128, 128), pContext) ||
            !m_wndSplitter.CreateView(2, 0, RUNTIME_CLASS(CMyEditView), CSize(128, 128), pContext)
            )
        {
            return false;
        }    if( !m_wndSplitter2.CreateStatic(m_wndSplitter.GetPane(1, 0), 1, 2) ||
            !m_wndSplitter2.CreateView(0, 0, RUNTIME_CLASS(CMyEditView), CSize(0, 0), pContext) ||
            !m_wndSplitter2.CreateView(0, 1, RUNTIME_CLASS(CMyEditView), CSize(0, 0), pContext)
            )
        {
            return false;
        }
    这样试试  我没试
      

  2.   

     if( !m_wndSplitter.CreateStatic(this, 3, 1) ||
            !m_wndSplitter.CreateView(0, 0, RUNTIME_CLASS(C***View1), CSize(128, 128), pContext) ||
            !m_wndSplitter.CreateView(2, 0, RUNTIME_CLASS(C***View3), CSize(128, 128), pContext)
            )
        {
            return false;
        }    if( !m_wndSplitter2.CreateStatic(m_wndSplitter.GetPane(1, 0), 1, 2) ||
            !m_wndSplitter2.CreateView(0, 0, RUNTIME_CLASS(C***View21), CSize(0, 0), pContext) ||
            !m_wndSplitter2.CreateView(0, 1, RUNTIME_CLASS(C***View22), CSize(0, 0), pContext)
            )
        {
            return false;
        }
    //更正下 RUNTIME_CLASS后面是类名,怎么你的每个RUNTIME_CLASS后卖弄的类名都是一样的呀 不是一个视图一个类这样应该没问题了
      

  3.   

    if(m_wndSplitter.CreateStatic(this,3,1)==NULL)
    {
    return FALSE;
    } m_wndSplitter.CreateView(0,0,RUNTIME_CLASS(CMyEditView),CSize(128,128), pContext); 
    m_wndSplitter.CreateView(2,0,RUNTIME_CLASS(CMyEditView),CSize(128,128),pContext);  if(m_wndSplitter2.CreateStatic(&m_wndSplitter,1,2,WS_CHILD|WS_VISIBLE, m_wndSplitter.IdFromRowCol(1, 0))==NULL)
    {
    return FALSE;
    }
    m_wndSplitter2.CreateView(0,0,RUNTIME_CLASS(CMyEditView),CSize(128,128),pContext);
    m_wndSplitter2.CreateView(0,1,RUNTIME_CLASS(CMyEditView),CSize(128,128),pContext); return TRUE;
      

  4.   

    呵呵,只是想先把界面做出来看看的找到原因了,在m_wndSplitter2.CreateStatic(&m_wndSplitter, 1, 2, WS_VISIBLE|WS_CHILD,m_wndSplitter.IdFromRowCol(1,0));中,CreateStatic的最后一个参数:
    nID
    The child window ID of the window. The ID can be AFX_IDW_PANE_FIRST unless the splitter window is nested inside another splitter window.
    谢谢哈!
      

  5.   

    lz把你代码中的这行去掉就可以了
    !m_wndSplitter.CreateView(1, 0, RUNTIME_CLASS(CMyEditView), CSize(128, 128), pContext) ||