主窗口关闭时,QWidget不会关闭

Ale*_* L. 6 c++ qt qwidget

我正在尝试创建一个主窗口(QWidget),当单击一个按钮时打开一个新的QWidget但是当我关闭主窗口时,最近打开的QWidget没有关闭.

main.cpp中

QApplication a(argc, argv);
MainWindow w;
w.show();
return a.exec();
Run Code Online (Sandbox Code Playgroud)

mainwindow.cpp(父)

MainWindow::MainWindow(QWidget *parent) :
    QMainWindow(parent),
ui(new Ui::MainWindow)
{
    ui->setupUi(this);
}
Run Code Online (Sandbox Code Playgroud)

out.cpp(孩子)

Out::Out(QWidget *parent) :
    QWidget(parent),
    ui(new Ui::Out)
{
    ui->setupUi(this);

}
Run Code Online (Sandbox Code Playgroud)

Chr*_*ris 9

我怀疑你在寻找Qt::WA_QuitOnClose:

当具有属性集的最后一个窗口小部件已接受closeEvent()时,Qt退出应用程序.可以使用QApplication :: quitOnLastWindowClosed属性修改此行为.默认情况下,为Qt :: Window类型的所有窗口小部件设置此属性.

在这种情况下,您可能应该致电:

myWidget->setAttribute( Qt::WA_QuitOnClose, false );
Run Code Online (Sandbox Code Playgroud)