【发布时间】:2020-05-08 00:12:59
【问题描述】:
我有一个 QtQuick 应用程序。当用户尝试关闭应用程序时,我想要一个“你确定吗?”弹出窗口。
我的主要 C++ 类有这个:
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
QQmlApplicationEngine engine;
engine.load(QUrl(QStringLiteral("qrc:/main.qml")));
return app.exec();
}
我的主 QML 类有一个应用程序窗口:
ApplicationWindow {
id: root
...
}
我将在哪里以及如何捕获关闭事件?我读过关于从 QMainWindow 方法或其他方法中覆盖 closeEvent() 的信息,但我没有 QMainWindow 并且我不知道我将把该代码放在哪里。
所以我想知道如何防止应用关闭并让其他事情发生,以及稍后当用户在确认对话框中单击“确定”时我将如何关闭应用。
据我所知,ApplicationWindow 的“onClosing”只允许我在不可避免的关闭之前进行一些清理,但它不会阻止关闭(如果我错了,请纠正我)
【问题讨论】:
-
酷,你解决了它!但解决方案不是问题的一部分。为了让一切都井井有条,请编辑您的问题,再次删除解决方案,然后将其作为答案发布。然后,尽快将该答案标记为正确答案。然后,寻找该答案的人可以第一眼看到这个问题有一个答案。另一方面,寻求帮助的人知道这里一切都很好,他们不需要打扰。谢谢!