Qt Remote Objects QML Types
Qt Remote Objectsの QML タイプは、リモートオブジェクトのネットワークを構築するために必要なヘルパー機能を提供します。これらは通常、特定のネットワークを構成するカスタム登録されたレプリカタイプと組み合わせて使用されます。
例として、以下の.repファイルを考えてみましょう:
class MyType { PROP(QString myProp="Hello World") };
生成されたレプリカはQMLの型として登録することができます:
qmlRegisterType<MyTypeReplica>("custom",1,0,"MyTypeReplica")
生成されたレプリカはQMLのタイプとして登録することができます:
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文を使ってアプリケーションにインポートすることができます:
import QtRemoteObjects
QML タイプ
Qt Remote Objects ネットワーク上のホストノード | |
Qt Remote Objects ネットワーク上のノード | |
グローバルオブジェクトは、QMLでリモートタイプを扱うための便利な機能を提供します。 | |
永続化されたプロパティのための基本的なストア |
©2024 The Qt Company Ltd. 本書に含まれるドキュメントの著作権は、それぞれの所有者に帰属します。 ここで提供されるドキュメントは、Free Software Foundation が発行したGNU Free Documentation License version 1.3に基づいてライセンスされています。 Qtおよびそれぞれのロゴは、フィンランドおよびその他の国におけるThe Qt Company Ltd.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。