Sur cette page

Qt Remote Objects QML Types

Les types QML pour 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 conjonction avec des types de répliques enregistrés sur mesure qui constituent un réseau spécifique.

Prenons l'exemple du 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é à partir de QML en conjonction 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 attribuer directement une propriété à une réplique, mais plutôt utiliser une fonction push. Cela est dû aux problèmes potentiels qui découlent du mélange de programmation déclarative et de mises à jour asynchrones. Plus précisément, nous voulons éviter les problèmes suivants :

myType.myProp = "Updated Text"
console.log(myType.myProp) // logs "Hello World", as the new text has not yet been round-tripped

Les types QML de ce module peuvent être importés dans votre application à l'aide de l'instruction import suivante dans votre fichier .qml :

import QtRemoteObjects

Types QML

Host

Un nœud hôte sur un réseau Qt Remote Objects

Node

Un nœud sur un réseau Qt Remote Objects

QtRemoteObjects

L'objet global fournit des fonctions utiles pour travailler avec des types distants en QML

SettingsStore

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.