我用aa.Create (IDD_DIALOG1)只能创建一个属于原来窗口的子窗口呀.

解决方案 »

  1.   

    ^_^  ,我来告诉你吧.用这个办法可以在主对话框的OnInitDialog()中启动另一个非模态对话框。 
    CDialog2 Dlg2; //注意Dlg2不能为OnInitDialog的局部变量。
    BOOL CDialog1::OnInitDialog()
     {
       CDialog::OnInitDialog();
       Dlg2.Create(IDD_DIALOG2,this );
       Dlg2.ShowWindow(SW_SHOW);
    }  ok?
      

  2.   

    不行呀Dlg2变成了Dlg1的子窗口,老是在Dlg1的上面呀
      

  3.   

    检查2的风格,确认设置了POPUP 边框
      

  4.   

    查了,是POPUP呀,但是Dlg1总是在Dlg2的一下面呀.
      

  5.   

    因为是它的子窗体嘛,把Create 中的第二个参数置空试试
      

  6.   

    试过了,也不行呀.
    我就是不想让Dlg2是Dlg1的子窗口呀.
    有什么办法呢?
      

  7.   

    这个问题我现在自已搞定了,
    原来把Dlg2.Create(IDD_DIALOG2,this );
    改为Dlg2.Create(IDD_DIALOG2,Dlg2 );
      

  8.   

    我开始不迷糊了,Create 中的第二个参数置不置空是没关系的,这句话的有什么效果我还真不理解
    Dlg2.Create(IDD_DIALOG2,Dlg2 );
      

  9.   

    这样子Dlg1就不会老是被Dlg1盖住了
      

  10.   

    Create函数的第二个参数是确定这个窗口的父窗口的