将Qt Quick Repeater的项目暴露给C ++

时间:2019-01-27 21:41:49

标签: qt qtquick2 qt-quick qtquick-designer

我在Qt Quick应用程序中使用Repeater,并且希望能够从C ++访问Repeater的子级。

这就是我正在做的事情,通过QObject属性countobjs公开项目:

import QtQuick 2.4

Row {
    id: root
    spacing: 10

    property alias count: rpt.model
    property var objs: []

    Repeater {
        id: rpt
        model: 5

        PlayerCard {
        }

        onItemAdded: root.objs.push(itemAt(index))
        onItemRemoved: root.objs.splice(index)
    }
}

但是在QML中具有功能(onItemAddedonItemRemoved)导致.ui.qml文件无法通过Qt快速设计器进行编辑。

还有其他方法吗?

0 个答案:

没有答案