我试图使一个主窗口(QWidget)打开一个新的QWidget当一个按钮被点击,但当我关闭主窗口,QWidget最近打开不关闭。
main.cpp
QApplication a(argc, argv);
MainWindow w;
w.show();
return a.exec();
mainwindow.cpp (父)
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
}
out.cpp (孩子)
Out::Out(QWidget *parent) :
QWidget(parent),
ui(new Ui::Out)
{
ui->setupUi(this);
}
我怀疑你在找Qt::WA_QuitOnClose
:
在这种情况下,您可能应该调用:使Qt在最后一个具有该属性的小部件时退出应用程序set已接受closeEvent()。此行为可以使用QApplication: quitOnLastWindowClosed财产。默认情况下属性为Qt::Window类型的所有小部件设置。
myWidget->setAttribute( Qt::WA_QuitOnClose, false );
Python
尝试创建如下的函数
def func_quit_all_windows():
sys.exit()
请记住import sys
当按钮被点击时调用函数
btn.clicked.connect(func_quit_all_windows)