0

当我在 C++ 中创建一个类时,我可以为 QML 注册它并为它创建视图。这很方便。但是,如果我需要许多相同类型的对象,并且需要在屏幕上显示很少的视图,我就会遇到问题。是否可以为对象而不是类注册 QML 类型?如果我改变了某个对象,我只需要看到它的视图发生了变化。

4

1 回答 1

1

您可以使用 setContextProperty 将对象导出到 QML 引擎:

// C++ code
MyObject myObject;
QQmlEngine engine;
engine.rootContext()->setContextProperty("myObject", &myObject);

// QML code
Text {
    text: myObject.name
}
于 2013-09-29T11:31:16.720 回答