gpt4 book ai didi

qt - 如何在 Qt 退出时进行清理

转载 作者:行者123 更新时间:2023-12-03 10:54:22 25 4
gpt4 key购买 nike

我想在应用程序退出之前在 Qt 应用程序中做一些内务处理(例如写入文件等)。我怎样才能在 Qt 中获得这个函数(退出或调用的任何东西)?

最佳答案

您需要将带有清理代码的插槽连接到 QCoreApplication::aboutToQuit()信号。

这允许您使用 QObject::deleteLater() 删除 QObjects并且对象将被删除,因为您尚未离开主应用程序事件循环。

如果您正在使用需要“关闭”调用的 C 库,您通常可以在从 QCoreApplication::exec() 返回后执行此操作。 .

两种技术的示例:

int main(int,char**)
{
QApplication app;
library_init();
QWidget window;
window.show();
QObject::connect(&app, SIGNAL(aboutToQuit()), &window, SLOT(closing()));
const int retval = app.exec();
library_close();
return retval;
}

关于qt - 如何在 Qt 退出时进行清理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8165487/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com