почему PyQt5 QWindow.setScreen () не работает? - PullRequest
0 голосов
/ 16 апреля 2019

Я пытаюсь запустить приложение Qt QML на дополнительном экране, но оно не работает.Я использую PyCharm в качестве IDE и PyQt5.

У меня физически подключен второй экран.и приложение работает правильно на основном экране, но даже если я пытаюсь установить экран окна на дополнительный, он не работает.Уже попробовал:

self.app = QGuiApplication(sys.argv)
self.engine = QQmlApplicationEngine()
# ...
self.engine.load(my_qml_name)
# ...
qW = QWindow(self.app.topLevelWindows()[0])
qW.setScreen(self.app.screens()[1])

Я запускаю приложение только на моем основном экране.

PS: мой topLevelWindow - это QQuickWindow, а не QWindow.

1 Ответ

0 голосов
/ 02 мая 2019

не приводите self.app.topLevelWindows () [0] ни к чему.

Код должен выглядеть следующим образом

self.app = QGuiApplication(sys.argv)
self.engine = QQmlApplicationEngine()
# ...
self.engine.load(my_qml_name)
# ...
qW = self.app.topLevelWindows()[0]
qW.setScreen(self.app.screens()[1])
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...