Qt远程对象QML类型

Qt远程对象的QML类型提供了构建远程对象网络的所需辅助组件。通常与特定网络的定制注册副本类型结合使用。

例如,考虑以下.rep文件

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

生成的副本可以被注册为QML类型

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

然后可以从QML中使用基类型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")
    }
}

请注意,默认情况下,您无法直接分配副本属性,而应使用一个push函数。这是由于声明性编程和异步更新的混合可能引起的问题。具体来说,我们想避免以下问题

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

可以使用以下语句将此模块中的QML类型导入到您的应用程序中.qml文件

import QtRemoteObjects

QML类型

主机

Qt远程对象网络上的主机节点

节点

Qt远程对象网络上的节点

QtRemoteObjects

全局对象提供了在QML中处理远程类型的有用功能

SettingsStore

持久属性的基本存储

© 2024 Qt公司有限公司。此处包含的文档贡献是各自所有者的版权。此处提供的文档根据自由软件基金会在GNU自由文档许可版1.3的条款发布。Qt及其相关商标是芬兰和/或世界上其他国家的Qt公司有限公司的商标。所有其他商标均为其各自所有者的财产。