c – Qt应用程序取消退出事件

我想知道是否有可能忽略/取消退出应用程序基于某个布尔标志设置,即使用户是单击红色“X”(关闭窗口按钮).

我是一个c#程序员,我知道这对.net应用程序来说很容易,但我对qt框架相当新,在google上搜索没有获取任何相关结果.

谢谢,

最佳答案
Qt的文档描述了这个特定的use-case about asking permission to close in their examples.

例如,如果您继承QMainWindow并重新实现closeEvent函数,则可以在有人试图关闭它时为您的应用提供自定义行为.例如:

void MainWindow::closeEvent(QCloseEvent *event)
{
    if (maybeSave()) {
        writeSettings();
        event->accept();
    } else {
        event->ignore();
    }
}

转载注明原文:c – Qt应用程序取消退出事件 - 代码日志