私は次のQtコードを持っています:
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
ChoosingDialog cdlg;
if(!startWin.exec())
{
// nothing chosen
return 0;
}
if(cdlg.firstWindowSelected)
{
CFirstWindow win;
win.show();
return app.exec();
}
else
{
CSecondWindow win;
win.show();
return app.exec();
}
}
これは機能しているように見えますが、一部の asm 行で「イベント ディスパッチャのクリーンアップ」でエラーが発生しています。少し騙してみましたが、問題は app.exec() の呼び出しに関連していることがわかりました。
更新:これらの行をChoosingDialogに追加すると(これはQt Creatorによって自動生成された単純な空のクラスです)
void ChoosingDialog ::closeEvent(QCloseEvent *)
{
exit(1);
}
エラーはありません