我创建了一个基于IDD_FORMVIEW的对话框,然后创建了一个从CFormView派生的类CMyview,这个类使用的对话框就是刚才创建的IDD_FORMVIEW对话框。然后我把VIEW分割为两部分,把这个CMyview类作为一个视图,但是为什么这个IDD_FORMVIEW的对话框显示不出来(我添加的控件没有~)。 m_wndSplitter.CreateStatic(this,1,2);      //创建分割窗口

//创建视图 m_wndSplitter.CreateView(0,0,RUNTIME_CLASS(CSplitView),CSize(300,100),pContext); m_wndSplitter.CreateView(0,1,RUNTIME_CLASS( CMyview),CSize(0,0),pContext);

解决方案 »

  1.   

    m_wndSplitter.CreateView(0,1,RUNTIME_CLASS( CMyview),CSize(0,0),pContext); 
    size都为0了,改一下
    m_wndSplitter.CreateView(0,1,RUNTIME_CLASS( CMyview),CSize(100,100),pContext); 
      

  2.   

    //除了1楼的修改以外,还可以如下操作。
    if(m_wndSplitter.CreateStatic(this,1,2)==NULL)
    return false;        //可以在创建视图以后设定一下行列的值。
            m_wndSplitter.SetRowInfo(0,1024,100);
    m_wndSplitter.SetColumnInfo(0,1240,100);
      

  3.   

     BOOL ret= CFrameWnd::OnCreateClient(lpcs, pContext);
    应该是这一句代码的问题,这一句代码要放在前面最先执行,谁知道是什么原因呢?
      

  4.   

    这句应该去掉, 直接return TRUE。
      

  5.   

    为什么不能用原来的view来分割?
    m_wndSplitter.CreateView(0,1,RUNTIME_CLASS( 原来的视图),CSize(100,100),pContext); 
    这样写就会出错~~