ObjectModel QML类型
定义了一组用于作为模型的项目。 更多...
导入语句 | import QtQml.Models |
属性
- count : int
附加属性
- index : int
方法
- append(object item)
- clear()
- object get(int index)
- insert(int index, object item)
- move(int from, int to, int n)
- remove(int index, int n)
详细描述
ObjectModel包含了在视图中使用的视觉项。当ObjectModel在视图中使用时,视图不需要代理,因为ObjectModel已经包含了视觉代理(项目)。
项目可以通过index附加属性来确定其在模型中的索引。
以下示例将三个彩色矩形放置在ListView中。
import QtQuick 2.0 import QtQml.Models 2.1 Rectangle { 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 } }
另请参阅Qt Quick Examples - Views。
属性文档
count : int |
模型中项目的数量。此属性是只读的。
附加属性文档
ObjectModel.index : int |
此附加属性持有此代理的项目在模型中的索引。
它附加到代理的每个实例。
方法文档
append(object item) |
object get(int index) |
从模型中返回索引为index的项目。这允许从JavaScript访问或修改项目
Component.onCompleted: { objectModel.append(objectComponent.createObject()) console.log(objectModel.get(0).objectName); objectModel.get(0).objectName = "first"; }
index 必须是列表中的元素。
另请参阅 append()。
insert(int index, object item) |
将 n 个项目从位置 from 移动到位置 to。
from 和 to 的范围必须存在;例如,将前 3 个项目移至模型末尾
objectModel.move(0, objectModel.count - 3, 3)
另请参阅 append()。
© 2024 Qt 公司有限公司。本文件中的文档贡献属于各自的版权所有者。本文件提供的文档受自由软件基金会发布的 GNU 自由文献许可证版本 1.3 条款的约束。Qt 和相关标志是芬兰和/或其他国家的 Qt 公司的商标。所有其他商标均为其各自所有者的财产。