Как получить текущее приложение QApplication в pyQt? - PullRequest
0 голосов
/ 20 ноября 2018

Я пытаюсь получить ссылку на текущий объект QApplication с помощью pyQt5, но не могу найти функцию.Мой поиск о "pyQt get current QApplication" показывает результаты о том, как создать QApplication.Поэтому мой вопрос:

Существует ли глобальный объект QApplication, и если да, то как получить ссылку на существующее (текущее) приложение.

Причина, по которой я спрашиваю, заключается в том, что я хочупроверить, выполняется ли отладочный код в приложении Qt GUI.Затем я хотел бы вызвать QMessagebox для отображения сообщений об ошибках, если функция используется в приложении Qt;или распечатайте сообщение на стандартный вывод.

1 Ответ

0 голосов
/ 20 ноября 2018

должен быть только один QApplication, и если мы хотим получить существующее, вы должны использовать instance(), общий подход заключается в использовании следующего метода:

app = QtWidgets.QApplication.instance()
if app is None:
    # if it does not exist then a QApplication is created
    app = QtWidgets.QApplication([])
...