Я пытался реализовать код из этого вопроса , но обнаружил, что QTimer
не срабатывает при определенных обстоятельствах.
Упрощенный код:
app = QApplication([])
view = QWebEngineView()
view.show()
def callback():
sys.exit(0)
QTimer.singleShot(1000, callback)
app.exec()
Приложение работает с этим кодом навсегда (ie. callback
никогда не выполняется). Однако, если вы закомментируете view.show()
, то он завершится через одну секунду, как и должно быть.
Насколько я могу судить, эта проблема относится только к QWebEngineView
; если мы заменим QWebEngineView
на c QWidget
или QLabel
, то он будет работать, как ожидается, и выйдет через одну секунду.
В чем причина этого и как я могу это исправить это?