本帖最后由 yangyin007 于 2011-03-07 09:22:26 编辑

解决方案 »

  1.   

    把文档视图和有按钮的对话框视图结合在一个界面
    CDialogBar
      

  2.   

    就用对话框就可以了,没有必要用SDI
      

  3.   

    现在我能把视图和对话框结合在一起了,获得了View的指针,但是不会对它进行切分,烦请具体指点一下。运行结果如下
    (我在CVidoDetectDlg这个对话框中建立了视图,指针为m_pwndView,我不知道如何对它进行切分。)BOOL CVidoDetectDlg::OnInitDialog()
    {
    CDialog::OnInitDialog();
    // TODO:  Add extra initialization here
    CRect rc;
    GetWindowRect(&rc);  
    ScreenToClient(&rc); 
    CRuntimeClass *pViewClass=RUNTIME_CLASS(View3);
    CCreateContext *pContext=new CCreateContext;
    pContext->m_pCurrentDoc=NULL;
    pContext->m_pCurrentFrame=NULL;
    pContext->m_pLastView=NULL;
    pContext->m_pNewDocTemplate=NULL;
    pContext->m_pNewViewClass=pViewClass; CWnd *pWnd=DYNAMIC_DOWNCAST(CWnd,pViewClass->CreateObject());
    pWnd->Create(NULL,NULL,AFX_WS_DEFAULT_VIEW,CRect(rc.left,rc.top+ 35,rc.right,rc.bottom),this,NULL,pContext);
    delete pContext;
    View3 *pView=DYNAMIC_DOWNCAST(View3,pWnd);
    m_pwndView = pView; return TRUE;  // return TRUE unless you set the focus to a control
    // EXCEPTION: OCX Property Pages should return FALSE
    }
      

  4.   

    是SDI的,我在Dialog中画视图,想对它进行切分。刚接触MFC真是晕头转向啊
      

  5.   

    注意研究RectTraker 类;
        他是个容器,内可以装若干个CRect,正好符合你的要求。
      

  6.   

    使用SSplitter,应该能满足你要求.
    http://www.codeproject.com/KB/splitter/SSplitter.aspx
    或者配合停靠窗口.
      

  7.   

    为什么非要用MFC呢那么麻烦。Directui也不错啊。
      

  8.   

    用对话框做就行吧。七八个控件启动后隐藏起来,点击哪个按钮显示哪个。
    -----------------------
    虚拟仪表控件  www.beaugauge.com
      

  9.   

    这种界面,用LibUIDK做相当简单。技术上,没必要切分窗口。那样只会让代码变得更复杂。楼主可以找我,我给你做个demo.
      

  10.   

    QT做起来比较简单一些,MFC头疼
      

  11.   

    你在view里切割你的上面就行了。 这个你能搞定吧。 然后用SetWindowPos把这view只占整个客户区的上部, 这个也简单吧? 然后下面可以是另一个view, 就是相当于你的工具区域。 同样调用SetWindwoPos置于底部。 如图:====================================论坛签名==================================

    当您的问题得到解答后请及时结贴.

    http://topic.csdn.net/u/20090501/15/7548d251-aec2-4975-a9bf-ca09a5551ba5.html
    http://topic.csdn.net/u/20100428/09/BC9E0908-F250-42A6-8765-B50A82FE186A.html
    http://topic.csdn.net/u/20100626/09/f35a4763-4b59-49c3-8061-d48fdbc29561.html如何给分和结贴?
    http://community.csdn.net/Help/HelpCenter.htm#结帖访问我的blog
    http://blog.csdn.net/muzizongheng