我正在调用EndDialog(IDCLOSE)以在继承的类中结束应用程序,CDialogImpl并且ATLASSUME(m_bModal)在CDialogImpl::EndDialog(int). 我究竟做错了什么?
1 回答
1
EndDialog旨在关闭模式对话框,不应用于基于对话框的应用程序。CWindow::DestroyWindow改为终止应用程序调用。
这是封装中断并且实现向用户公开实现细节的地方之一。EndDialog在销毁对话框窗口的基础上执行附加操作。额外的工作(如存储返回值)对于基于对话框的应用程序来说毫无意义。结果是您必须根据上下文调用不同的方法来终止对话。
于 2013-08-29T12:27:22.793 回答