c++ - 当模态对话框没有焦点时 MFC EndDialog 崩溃

标签 c++ mfc

我在结束任务后关闭模态对话框,在我创建模态对话框的单独线程中:

void CmodguiApp::_notify_task_end() {
  processingDialog->EndDialog(0);
}

如果我的应用程序有焦点(因此模态对话框有焦点),这会很好地工作。但是,如果我在模式对话框打开时更改窗口(例如,如果我离开应用程序处理并切换到 Firefox 等),这会导致应用程序崩溃。

有什么问题吗?

最佳答案

不要用 EndDialog 结束对话。而是将带有 WM_CLOSE 或 WM_QUIT 的 PostMessage 发送到对话窗口。

关于c++ - 当模态对话框没有焦点时 MFC EndDialog 崩溃,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29954940/

相关文章:

visual-c++ - MFC中OnPaint()函数的使用

c++ - 在一次处理大量数据时避免Windows中的 "(Not Responding)"标签

c++ - 在控制结构中定义变量

c++ - 当用户单击 Twig 时,如何逐步构建 Qt 树形小部件?

android - 无法在 Android 8 Oreo 上执行 "system"命令

c++ - 从串口mfc读取信息

c++ - CTimeSpan.GetDays() 和夏令时

mfc - 如何绘制 32 位 Alpha channel 位图?

c++ - 应用考虑特定边缘子集的算法

c++ - 默认赋值运算符适合 Vector 吗?