我已经为我的wxApp添加了新的对话框和片段,但是现在当我关闭主框架时,主框架被删除但它永远不会进入OnExit功能,并且卡住了。
当我试图“打破所有”时,它会进入这个函数调用:
wxIdleWakeUpModule::MsgHookProc
在:
return CallNextHookEx(ms_hMsgHookProc, nCode, wParam, lParam);
您对如何解决这个问题有什么建议吗?
答案 0 :(得分:0)
关闭对话框时使用Destroy。这个page显示了在堆上创建对象时如何做到这一点:
void AskUser()
{
MyAskDialog *dlg = new MyAskDialog(...);
if ( dlg->ShowModal() == wxID_OK )
...
//else: dialog was cancelled or some another button pressed
dlg->Destroy();
}
在堆栈上创建对话框时,您不应该做任何特别的事情。
答案 1 :(得分:0)
所以在我逐一测试了我添加到我之前工作程序中的所有代码之后,我意识到我创建的wxDialog
之一没有父级,但这是不打算。
因此,它不会关闭,因为其中一个主窗口仍然存活(即使它没有显示)
感谢大家的帮助