Qt QML:如何从C++; 我有一个简单的需求:我定义了C++类 class MyClass: public QDeclarativeItem { Q_OBJECT public: MyClass(QDeclarativeItem * parent=0); ... private: QList<QString> mList } class MyClass:public QDeclarativeItem { Q_对象 公众: MyClass(QDeclarativeItem*parent=0); ... 私人: QList mList }

Qt QML:如何从C++; 我有一个简单的需求:我定义了C++类 class MyClass: public QDeclarativeItem { Q_OBJECT public: MyClass(QDeclarativeItem * parent=0); ... private: QList<QString> mList } class MyClass:public QDeclarativeItem { Q_对象 公众: MyClass(QDeclarativeItem*parent=0); ... 私人: QList mList },qt,signals-slots,qml,Qt,Signals Slots,Qml,当然,我已经注册了:qmlRegisterType(…) 我想在QML代码中访问我的QList mList。我怎么做 这看起来像一个简单的问题,让我很恼火,但我找不到任何关于这个的东西。(我可以创建一个Q_可调用插槽,但无法读取结果,等等) 编辑:我认为QList不是Qt的QML绑定所支持的数据类型。我使用QtWebKiTek桥与C++和JavaScript之间存在类似的问题。 如果可能,尝试使用QVariantList而不是QList。虽然从技术上讲,这是一个用于QList的typedef,但

当然,我已经注册了:
qmlRegisterType(…)

我想在QML代码中访问我的
QList mList
。我怎么做

这看起来像一个简单的问题,让我很恼火,但我找不到任何关于这个的东西。(我可以创建一个Q_可调用插槽,但无法读取结果,等等)


编辑:

我认为
QList
不是Qt的QML绑定所支持的数据类型。我使用QtWebKiTek桥与C++和JavaScript之间存在类似的问题。
如果可能,尝试使用
QVariantList
而不是
QList
。虽然从技术上讲,这是一个用于
QList的typedef,但我认为它应该可以工作。

如果您的列表中需要自定义类型(不仅仅是字符串或其他基本类型),那么这种情况下就有QDeclarativeListProperty

<>但是更复杂,参见

:根据Que>QLIST C++类型,在QML中透明地支持JavaScript数组类型< /C>