void CDrawDlg::OnBnClickedButton2()
{
CTest dlgTest;
dlgTest.Create(IDD_DIALOG1,this);
dlgTest.ShowWindow(SW_NORMAL);
}可是点击按钮后,对话框只是闪一下,并没有显示出来
这是什么问题呢?初学vc,请高人指教

解决方案 »

  1.   

    以为你的dlgTest是局部变量,局部变量的生存期是局部的,也就是说当你的OnBnClickedButton2()事件结束时,对话框也就消失了,你可以把它定义为CDrawDlg的成员变量,这样就可以了;或者什么都不改,显示的时候使之为摸态的。
      

  2.   

    CTest* dlgTest = new CTest;
    dlgTest->Create(IDD_DIALOG1,this);
    dlgTest->ShowWindow(SW_NORMAL);
      

  3.   

    to:liutian32() ,谢谢,我意识到这个问题了。只是这个成员变量应该怎么加阿,我把CTest的头文件include过来,可是每次编译的时候都会出现中断错误。
      

  4.   

    to:huaboy408(竹一木) ,谢谢,这样就可以成功了。这其中内存的释放,是由程序自己完成了?
    btw:很感谢两位,弱弱地问,怎么给分阿:)
      

  5.   

    CTest* dlgTest = new CTest();
    dlgTest->Create(IDD_DIALOG1,this);
    dlgTest->ShowWindow(SW_SHOW);