QML自定义属性

时间:2010-11-10 11:45:56

标签: qt4 qml

我在QML项目中定义自定义属性时遇到了问题:

Item {
    property MovieTileItem data
    Text {
        text: "Some text"
    }
}

MovieTitleItem是在单独的QML文件中定义的项目:

import Qt 4.7

Item {
    property string title
    property string posterSource
}

我得到的错误是“无法将对象分配给属性”指向属性声明。 有什么想法吗?

2 个答案:

答案 0 :(得分:7)

“无法将对象分配给属性”,因为已存在“数据”这样的属性(并且它是只读的):

http://qt-project.org/doc/qt-4.8/qml-item.html#data-prop

答案 1 :(得分:1)

我相信,如果没有在qmlRegisterType()中注册自定义类型,则它们不能用作属性类型。以下可能会实现您的目标

Item {
    data:Custom{}
    Text {
        text: "Some text"
    }
}