在VB中有MDI窗口,在VC中如何去实现在一个程序中,可以一下显示多个对话框,都是无模式的,并且对话框的移动范围只能在客户区中。谢了!!!!!!

解决方案 »

  1.   

    在VC中也有MDI啊!你可以在建工程时基类选择CFormView(默认是CView)
    这样就可以实现你所说的功能.同样,你也可以用模式对话框控制,但你得用MoveWindow来限定它们的范围.用CFormView的MDI直接达到你的要求
      

  2.   

    一下显示多个无模式的对话框很容易啊。都Create后,ShowWindow(SW_SHOW)就可以实现了。至于范围在客户区嘛,响应一下鼠标移动事件,判断窗口是否移到了客户区外就可以了
      

  3.   


    这个我知道的,但是需要显示很多个对话框,用FORMVIEW是不是要做多个文档模板啊!
      

  4.   

    你可以用wizzard生成一个mdi的应用,然后view使用formview就可以了,不过你要生成多种类型的formview才可以,或者你可以不使用doc-view的形式,自己按需要创建不同的formview也可以了.
      

  5.   

    示多个无模式的对话框
    *Dlg.h中:
    protected:
    CModeless *m_pModeless;*Dlg.cpp中:
    void *Dlg::OnOk()
    {
      m_pModeless = new CModeless(this);
      m_pModeless->Create();
    }
      

  6.   

    或者,用楼上的方法产生非模式对话框。试试: 
     m_pModeless = new CModeless(this);
      m_pModeless->Create();
    m_pModeless ->ShowWindow(SW_SHOW);
    m_pModeless ->SetParent(AfxGetMainWnd());