0

我在应用程序退出之前进行清理时遇到了麻烦 - 在其他重要事件发生之前调用了我的清理。

目前我正在使用

QObject.connect(self.qtApp,
                SIGNAL("lastWindowClosed()"),
                self._lastWindowClosed)

我的应用程序由一个QtGui.QDialog, 抛出SIGNAL("accepted()")SIGNAL("rejected()")(确定或取消按钮)组成。如果我如上所示进行清理,我会错过这些事件。如果我对 进行清理SIGNAL("aboutToQuit()"),我不会错过这些事件。

我未能找到关于这两个信号中任何一个的有意义的文档。例如,PySide 关于aboutToQuitlastWindowClosed的文档讨论了一些 filepths 而与应用程序的生命周期无关。

看来我需要使用 aboutToQuit()。我在哪里可以找到有关此信号的有意义的文档,以确保在此之前不会错过任何事件?

4

1 回答 1

2

请参阅QCoreApplication::aboutToQuit 文档页面

如果您的应用程序必须在最后一秒进行清理,则该信号特别有用。请注意,在此状态下无法进行任何用户交互。

所以如果你想做清理,应该使用这个信号。

lastWindowClosed所有窗口关闭时发出信号。它不一定会导致应用程序终止。并且不能保证在应用程序终止时发出此信号(例如,使用 以编程方式关闭应用程序时不会发出此信号QApplication::quit)。

于 2013-07-05T09:25:28.117 回答