Qt Remote Objects QML Types
Les types QML destinés à Qt Remote Objects fournissent les éléments d'aide nécessaires à la construction d'un réseau d'objets distants. Ils sont généralement utilisés en association avec des types de répliques enregistrés de manière personnalisée qui constituent un réseau spécifique.
Prenons, à titre d'exemple, le fichier .rep suivant :
class MyType {
PROP(QString myProp="Hello World")
};La réplique générée peut être enregistrée en tant que type QML :
qmlRegisterType<MyTypeReplica>("custom",1,0,"MyTypeReplica")Puis utilisée depuis QML en association avec le type de base Node :
import QtQuick
import QtRemoteObjects
import custom 1.0
Item {
MyTypeReplica {
id: myType
node: Node { registryUrl: "local:registry" }
}
Text { text: myType.myProp }
MouseArea {
anchors.fill: parent
onClicked: myType.pushMyProp("Updated Text")
}
}Notez que, par défaut, vous ne pouvez pas affecter directement une valeur à une propriété de réplique, mais devez plutôt utiliser une fonction de « push ». Cela est dû aux problèmes potentiels découlant de la combinaison de la programmation déclarative et des mises à jour asynchrones. Plus précisément, nous souhaitons éviter des problèmes tels que celui-ci :
myType.myProp = "Updated Text"
console.log(myType.myProp) // logs "Hello World", as the new text has not yet been round-trippedLes types QML de ce module peuvent être importés dans votre application à l’aide de l’instruction d’importation suivante dans votre fichier .qml :
import QtRemoteObjectsTypes QML
Un nœud hôte sur un réseau Qt Remote Objects | |
Un nœud sur un réseau Qt Remote Objects | |
L'objet global fournit des fonctions utiles pour travailler avec des types distants en QML | |
Un magasin de base pour les propriétés persistantes |
© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.