ボタンを押すと、QDialog(名前はqds)を作成するMainwindowがあります。 メインウィンドウを閉じると、QDialogも閉じられます。しかし、メインウィンドウを閉じると、QDialogはまだ開いていて、アプリケーションはまだ実行されています。 これは、メインウィンドウのデストラクタです:MainWindowからQDialogを閉じる
MainWindow::~MainWindow(){
if(qds) delete qds; // this is the QDialog
// ...other code
}
QDは、メインウィンドウの子ではありません。 私は、メインウィンドウのコンストラクタで
setAttribute(Qt::WA_DeleteOnClose);
を置くことをしてみましたが、それは、セグメンテーションフォール(ダブル無料)を生成します。
'setAttribute(Qt :: WA_DeleteOnClose);ケースで' delete qds; 'を削除しましたか? – LogicStuff
@LogicStuffええ、それは同じです – CodeBott
ダイアログをどのように作成するのかコードを表示してください。 – demonplus