Qt6 для Python (PySide6) в Windows 10: не удается заставить QtQml и QtQuick работать из QML
На моем компьютере с Windows 10 я пробую несколько простых примеров нового Qt6, и пример на основе QML мне не подходит.
Я запускаю Python 3.8.6 и виртуальный env
python3 -m venv venv
.\venv\Scripts\Activate.ps1
Pyside6 устанавливается без предупреждений в venv
pip install pyside6
и пример приветственного мира без QML с использованием QApplication и QLabel работает нормально (этот: https://doc.qt.io/qtforpython/tutorials/basictutorial/widgets.html )
Что не работает, так это этот пример, взятый из https://doc.qt.io/qtforpython/tutorials/basictutorial/qml.html :
main.py:
from PySide6.QtWidgets import QApplication
from PySide6.QtQuick import QQuickView
from PySide6.QtCore import QUrl
app = QApplication([])
view = QQuickView()
url = QUrl("view.qml")
view.setSource(url)
view.show()
app.exec_()
view.qml:
import QtQuick 2.0
Rectangle {
width: 200
height: 200
color: "green"
Text {
text: "Hello World"
anchors.centerIn: parent
}
}
сообщения, которые я получаю при попытке запустить:
file:///C:/github/aorcl/python-gui-2/view.qml:1:1: Cannot load library C:\github\aorcl\python-gui-2\venv\lib\site-packages\PySide6\qml\QtQml\WorkerScript\workerscriptplugin.dll: The specified module could not be found.
import QtQuick
^
file:///C:/github/aorcl/python-gui-2/view.qml: Failed to load dependencies for module "QtQml" version 6.0
file:///C:/github/aorcl/python-gui-2/view.qml: Failed to load dependencies for module "QtQuick" version 6.0
Я проверил, и файл не пропал, он есть:
C:\github\aorcl\python-gui-2\venv\lib\site-packages\PySide6\qml\QtQml\WorkerScript\workerscriptplugin.dll
Что еще мне не хватает?
3 ответа
У меня такая же ошибка с использованием Python 3.9.1 + Pipenv + Windows 10 + Powershell. Возможно, это связано с системной переменной окружения PATH.
Затем я пробовал использовать venv и CMD (не Powershell), но активировал среду с помощью
.env\Scripts\activate.bat
вместо
.\env\Scripts\Activate.ps1
. Это работает
Изменен "импорт QtQuick 2.0" на "импорт QtQuick 6.0". Вроде работает. Но я не знаю, как убедиться, что версия в файлах QML (не только QtQuick)...
Моя среда
Python3.8
+
PySide6
+
Pycharm
в
win10
.
Я изменился
import QtQuick 2.0
к
import QtQuick 6.0
. Это работает.