Récupération de données au démarrage
bonjour;
je suis un peu débutant en qml et pyqt.
donc ma question est comment récupérer des données depuis une fonction python on utilisant qml(javascript) , dans l'exemple qui suit je veux afficher le text "grrrrrrrrrr" non pas "mettre a jour".
voici mon code python: main.py
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
|
class MainApp(QObject):
def __init__(self, context, parent=None):
super(MainApp, self).__init__(parent)
self.win = parent
self.ctx = context
@pyqtSlot()
def alll(self):
a = "grrrrrrrrrrrrrrr"
self.ctx.setContextProperty("retour", a)
if __name__ == "__main__":
app = QApplication(sys.argv)
engine = QQmlApplicationEngine()
# Création d'un objet QQmlContext pour communiquer avec le code QML
ctx = engine.rootContext()
engine.load('main.qml')
win = engine.rootObjects()[0]
py_mainapp = MainApp(ctx,win)
ctx.setContextProperty("py_MainApp", py_mainapp)
win.show()
sys.exit(app.exec()) |
et voici mon code : main.qml
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
|
Text {
id: name
text: "Mettre a jour ..."
function findGreetings() {
text = "kkkkk"
py_MainApp.alll()
alert1 = retour
console.log(alert1)
}
Component.onCompleted: findGreetings()
} |
l'erreur que j'ai eu est qu'il ne connais pas py_MainApp.
a savoir aussi quand j’utilise le onClicked et j'appelle le py_MainApp tous marche bien .
merci d'avance.