Auf dieser Seite

Qt Remote Objects QML Types

Die QML-Typen für Qt Remote Objects bieten die Hilfselemente, die zum Aufbau eines Netzwerks aus Remote-Objekten benötigt werden. Sie werden in der Regel in Verbindung mit benutzerdefinierten, registrierten Replikat-Typen verwendet, aus denen ein bestimmtes Netzwerk besteht.

Betrachten Sie als Beispiel die folgende .rep-Datei:

class MyType {
    PROP(QString myProp="Hello World")
};

Die generierte Replik kann als QML-Typ registriert werden:

qmlRegisterType<MyTypeReplica>("custom",1,0,"MyTypeReplica")

Und anschließend in QML in Verbindung mit dem Basistyp `Node` verwendet werden:

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")
    }
}

Beachten Sie, dass Sie standardmäßig keine Werte direkt einer Replikat-Eigenschaft zuweisen können, sondern stattdessen die Funktion „ push “ verwenden müssen. Dies liegt an den potenziellen Problemen, die durch die Vermischung von deklarativer Programmierung und asynchronen Aktualisierungen entstehen. Insbesondere möchten wir Probleme wie die folgenden vermeiden:

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

Die QML-Typen in diesem Modul können mithilfe der folgenden Importanweisung in Ihrer .qml-Datei in Ihre Anwendung importiert werden:

import QtRemoteObjects

QML-Typen

Host

Ein Host-Knoten in einem „ Qt Remote Objects “-Netzwerk

Node

Ein Knoten in einem „ Qt Remote Objects “-Netzwerk

QtRemoteObjects

Das globale Objekt bietet nützliche Funktionen für die Arbeit mit Remote-Typen in QML

SettingsStore

Ein einfacher Speicher für persistierte Eigenschaften

© 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.