在QML中使用模型的大小

时间:2016-08-02 08:24:09

标签: qt qml qtquick2

我正在寻找一种方法来访问QML中模型中可以找到的元素数量。

例如:

Item {
    id: root
    Row {
        id: row
        height: root.height
        width: root.width
        spacing: 5
        Repeater {
            id: rep
            width: root.width
            height: root.height
            model: [5, 3, 3, 1, 12]
            delegate: myDelegate
            Text {
                id: myDelegate
                text: "Element " + index + " of " size + ":" + modelData
        }
    }
}

但我无法弄清楚如何检索模型的大小。 在文档中,我可以找到一个名为count的属性,但没有提示如何访问它。

2 个答案:

答案 0 :(得分:8)

这取决于您使用的型号。在您的情况下,该模型是一个普通的旧JavaScript数组,因此您使用model.length。与模型或视图相关的每个其他Qt类型都有一个count属性:ListModelRepeaterListView等等。因此,您也可以使用rep.count

答案 1 :(得分:0)

通用方法是请求转发器的基础模型计数 - 在您的情况下,它将是 rep.count