У меня возникли проблемы с очисткой непосредственно перед завершением работы приложения - моя очистка вызывается до того, как произойдут другие важные события.Qt и очистка непосредственно перед завершением приложения
В настоящее время я использую
QObject.connect(self.qtApp,
SIGNAL("lastWindowClosed()"),
self._lastWindowClosed)
Мое приложение состоит из одного QtGui.QDialog
, что бросает SIGNAL("accepted()")
или SIGNAL("rejected()")
(OK или Отмена кнопки). Если я сделаю очистку, как показано выше, я пропущу эти события. Если я сделаю очистку на SIGNAL("aboutToQuit()")
, я не пропущу эти события.
Я не могу найти значимую документацию по любому из двух сигналов. Например, документация PySide по aboutToQuit и lastWindowClosed рассказывает о некоторых файлах и ничего не связано с временем жизни приложения.
Похоже, что мне нужно использовать aboutToQuit(). Где я могу найти значимую документацию по этому сигналу, чтобы я не уверен, что до этого события не были пропущены?
Посмотрите стандартный модуль python [atexit] (http://docs.python.org/2/library/atexit.html). Вероятно, вы можете использовать это и не нуждаться в сигнале/функции PyQt. – TobiMarg
Что вы подразумеваете под «miss events»? Если вам нужно обработать 2 сигнала, подключите их оба к слотам. Оба слота будут вызваны. Или вы беспокоитесь о заказе сигналов? –
@ Riateche, да, я беспокоюсь о заказе сигналов. Один из сигналов запускает некоторую обработку, тогда как другая очищает, то есть уничтожает объект обработки. – Vorac