如何显示非模态 CDialog?

2022-01-12 00:00:00 visual-c++ c++ mfc cdialog

谁能告诉我如何在 MFC 的 Visual c++ 6.0 中创建一个非模态对话框并显示它?我写了这段代码:

Can someone tell me how I could create a Non Modal Dialog in MFC's Visual c++ 6.0 and show it? I wrote this code:

CDialog dialog;
if (dialog.init(initialization values...))
   dialog.DoModal();

但它阻止我的应用程序显示对话框.我不知道是否有任何方法或其他方法可以做到这一点.

But it blocks my application from showing the dialog. I dont know if there exists any method or other way to do it.

谢谢

推荐答案

/* CChildDialog class is inherited from CDialog */
CChildDialog *m_pDialog = NULL;

// Invoking the Dialog
m_pDialog = new CChildDialog();

if (m_pDialog != NULL)
{
      BOOL ret = m_pDialog->Create(IDD_CHILDDIALOG, this);

      if (!ret)   //Create failed.
      {
         AfxMessageBox(_T("Error creating Dialog"));
      }    
      m_pDialog->ShowWindow(SW_SHOW);
}

// Delete the dialog once done
delete m_pDialog;

相关文章