我在Visual Studio 2008中创建了一个基于MFC对话框的应用程序。

CCalendarWindowDlg dlg;
m_pMainWnd = &dlg;
INT_PTR nResponse = dlg.DoModal();

当我运行应用程序时,DoModal()在第一行声明
INT_PTR CDialog::DoModal()
{
    // can be constructed with a resource template or InitModalIndirect
    ASSERT(m_lpszTemplateName != NULL || m_hDialogTemplate != NULL ||
    m_lpDialogTemplate != NULL);
}

谁能帮忙吗?

最佳答案

为了在Dialog类的Constructor中解决此问题,我做了类似的事情

CCalendarWindowDlg::CCalendarWindowDlg ()
    :CDialog(IDD)
{
}

注意,我正在使用要呈现的表单的资源ID调用CDialog父类的构造函数。

07-28 01:02