怎样实现非模式窗口,为什么我用 create方法后。窗口闪一下就没了??谢谢。

解决方案 »

  1.   

    在你要创建你的非模式对话框的基类中声明那个对话框类型的成员变量
    然后在这个类的Constructor中new出你的对话框
    接着就是在你的类中某个需要显示这个对话框的按钮消息函数中Create出这个对话框
    具体一些比如你的对话框类叫CModalessDlg 基类中的实例叫m_pdlg;
    那么在基类的按钮消息函数中就写
    m_pdlg->Create(CModalessDlg::IDD);
    m_pdlg->ShowWindow(SW_SHOW);
    最后别忘了在基类的Desctructor中delete你对话框的实例
      

  2.   

    创建非模态对话框:
    建一个对话框,类名为CDlg,对话框ID为ID_MYDLG;
    在需要调用此对话框的类(假设我们要在主窗口MainFrame中调用)的头文件
    MainFrame.h的CMainFrame类中public中声明:CDlg *mydlg;
    然后在MainFrame.cpp中某个函数调用时:
    Dlg=new CClientMG(this);//创建非模态对话框
    Dlg->Create(IDD_CLIENTMG);
    Dlg->ShowWindow(SW_RESTORE);
    即可创建并调用非模态对话框