基本思路:调用QApplication的exit()退出程序,退出同时,并发出退出码。在QApplication的exec()处,根据退出码,执行QProcess的startDetached(),再次打开程序。
实例:
1.在重启操作的槽函数
void myDemo::onRestart()
{
qApp->exit(999);
}
2.main()函数
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
myDemo demo;
demo.show();
int code = app.exec();
if (code == 999) {
QProcess::startDetached(qApp->applicationFilePath(), QStringList());
}
return code;
}