一、描述
ObjectModel 包含要在视图中使用的可视项。在视图中使用 ObjectModel 时,视图不需要委托,因为 ObjectModel 已经包含可视委托(项目)。
下面的示例在 ListView 中放置了三个彩色矩形:
import QtQuick 2.12
import QtQuick.Window 2.12
Window
{
width: 400;height: 400
visible: true
ObjectModel {
id: itemModel
Rectangle { height: 30; width: 80; color: "red" }
Rectangle { height: 30; width: 80; color: "green" }
Rectangle { height: 30; width: 80; color: "blue" }
}
ListView {
anchors.fill: parent
model: itemModel
}
}
二、属性成员
1、count : int
只读属性,模型中的项目数。
三、附加属性
1、ObjectModel.index : int
此附加属性保存模型中此委托项的索引。它附加到委托的每个实例。
四、成员函数
1、object get(int index)
返回模型中索引处的项目。
这允许从 JavaScript 访问或修改项目:
Component.onCompleted:
{
objectModel.append(objectComponent.createObject())
console.log(objectModel.get(0).objectName);
objectModel.get(0).objectName = "first";
}
其他成员函数见:ListModel 的成员函数。