我的IE在另一个新对话框上的EndDialog和DoModal崩溃了

时间:2014-04-10 15:28:37

标签: internet-explorer mfc modal-dialog atl cdialog

我正在使用m_nRet = DoModal();

打开CDialog(CAxDialogImpl)

在这个对话框中,我有一个选项按钮。当我单击此选项按钮时,我需要关闭此现有对话框并打开另一个对话框(我的选项对话框)。为了关闭现有对话框,我首先调用EndDialog(m_nRet)然后再次调用DoModal()以打开我的选项对话框。

我能够成功关闭并重新打开另一个对话框。但是,当我尝试关闭这个新选项对话框时,后台的IE页面会刷新一条消息:

  

此网页出现问题导致Internet Explorer关闭并重新打开该标签页。

我是这项技术的新手,非常感谢您的帮助。谢谢!

1 个答案:

答案 0 :(得分:0)

单击选项按钮时,您需要设置成员变量(例如:m_bInvokeOptionsDlg)或唯一的返回值并退出对话框。

然后,调用函数应检查此值并调用选项对话框。 一旦调用返回,您可以循环返回并再次打开初始对话框。

另一种方法是在单击选项按钮时直接调用选项对话框,但随后两个对话框都可见。