我想在Qt应用程序退出之前,在该应用程序中做一些内部事务(比如写入文件等)。如何在Qt中访问此函数(exit或其他调用)?
发布于 2011-11-17 18:35:07
您需要将带有清理代码的插槽连接到QCoreApplication::aboutToQuit()
信号。
这允许您使用QObject::deleteLater()
删除QObjects,并且对象将被删除,因为您尚未离开主应用程序事件循环。
如果您使用的是需要“shutdown”调用的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;
}
https://stackoverflow.com/questions/8165487
复制相似问题