サーバーから非常に頻繁にデータを受信しています。このデータは主に数字で構成されています。それらのそれぞれは、更新が必要な QML オブジェクトに対応しています。
ファイルからオブジェクトQ_PROPERTYをsignals更新するための最善の方法は何ですか?QMLC++
サーバーから非常に頻繁にデータを受信しています。このデータは主に数字で構成されています。それらのそれぞれは、更新が必要な QML オブジェクトに対応しています。
ファイルからオブジェクトQ_PROPERTYをsignals更新するための最善の方法は何ですか?QMLC++
非常に良い方法は、QML から C++ オブジェクトへのバインドを使用することです。
F.ex。qmlオブジェクトとしてユーザーに表示する必要があるデータクラスがあります。
データと適切なプロパティを持つ C++ クラスがあります。
class MyData
{
Q_OBJECT
Q_PROPERTY(qreal number READ number NOTIFY numberChanged)
....
//here you implement setter function that emits numberChanged() signal
};
いくつかのヘルパー クラスを介して、または直接、データを qml に公開します。
view->rootContext()->setContextProperty("myData", myDataObject);
qmlでオブジェクトへのバインディングを使用するよりも:
Text
{
text: myData.number
}
これで、MyData クラスのオブジェクトのデータを変更できるようになり、qml が自動的に更新されます。