diff options
Diffstat (limited to 'sources/pyside6/doc/tutorials/qmlapp/main.py')
| -rw-r--r-- | sources/pyside6/doc/tutorials/qmlapp/main.py | 22 |
1 files changed, 11 insertions, 11 deletions
diff --git a/sources/pyside6/doc/tutorials/qmlapp/main.py b/sources/pyside6/doc/tutorials/qmlapp/main.py index c532e8d26..3ab440531 100644 --- a/sources/pyside6/doc/tutorials/qmlapp/main.py +++ b/sources/pyside6/doc/tutorials/qmlapp/main.py @@ -5,43 +5,43 @@ from __future__ import annotations import sys import urllib.request import json -from pathlib import Path from PySide6.QtQuick import QQuickView -from PySide6.QtCore import QStringListModel, QUrl +from PySide6.QtCore import QStringListModel from PySide6.QtGui import QGuiApplication if __name__ == '__main__': - #get our data + # get our data url = "http://country.io/names.json" response = urllib.request.urlopen(url) data = json.loads(response.read().decode('utf-8')) - #Format and sort the data + # Format and sort the data data_list = list(data.values()) data_list.sort() - #Set up the application window + # Set up the application window app = QGuiApplication(sys.argv) view = QQuickView() view.setResizeMode(QQuickView.SizeRootObjectToView) - #Expose the list to the Qml code + # Expose the list to the Qml code my_model = QStringListModel() my_model.setStringList(data_list) view.setInitialProperties({"myModel": my_model}) - #Load the QML file - qml_file = Path(__file__).parent / "view.qml" - view.setSource(QUrl.fromLocalFile(qml_file.resolve())) + # Load the QML file + # Add the current directory to the import paths and load the main module. + view.engine().addImportPath(sys.path[0]) + view.loadFromModule("Main", "Main") - #Show the window + # Show the window if view.status() == QQuickView.Error: sys.exit(-1) view.show() - #execute and cleanup + # execute and cleanup app.exec() del view |
