我经常从服务器接收数据。该数据主要由数字组成。它们中的每一个都对应于一个需要更新的 QML 对象。
为了从文件中更新对象,Q_PROPERTY
最好的做法是什么?signals
QML
C++
我经常从服务器接收数据。该数据主要由数字组成。它们中的每一个都对应于一个需要更新的 QML 对象。
为了从文件中更新对象,Q_PROPERTY
最好的做法是什么?signals
QML
C++
相当不错的方法是使用从 QML 绑定到 C++ 对象。
前任 你有数据类,应该作为一些 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 会自动更新。