构造器 QML 类型
动态创建对象。 更多...
导入声明 | import QtQml.Models |
属性
- active : bool
- asynchronous : bool
- count : int
- delegate : QtQml::Component
- model : variant
- object : QtObject
信号
- objectAdded(int index, QtObject object)
- objectRemoved(int index, QtObject object)
方法
- QtObject objectAt(int index)
详细描述
构造器可用于控制对象的动态创建,或从模板动态创建多个对象。
构造器元素将管理其创建的对象。这些对象将成为构造器的子对象,如果构造器的属性发生变化,构造器也可以删除它们。对象还可以通过其他方式动态销毁, unless the Instantiator's properties change.
属性文档
active : bool |
当 active 为 true,且代理组件就绪时,构造器将根据模型创建对象。当 active 为 false,则不会创建对象,并且会销毁之前创建的对象。
默认为 true。
asynchronous : bool |
当 asynchronous 为 true 时,构造器将尝试异步创建对象。这意味着即使 active 设置为 true,对象也可能不可用。
您可以使用 objectAdded 信号来响应用件创建。
默认为 false。
count : int |
构造器当前管理的对象数量。
delegate : QtQml::Component |
用于创建所有对象的组件。
请注意,在委托实例内部将可用额外变量“index”。该变量引用该实例在“Instantiator”中的索引,并可用于通过“Instantiator”的objectAt方法获取对象。
如果更改此属性,则使用旧委托的所有实例将被销毁,并使用新委托创建新实例。
model : variant |
可以将此属性设置为支持的任何数据模型。
- 表示重复器要创建的委托数量的数字
- 模型(例如ListModel项或QAbstractItemModel子类)
- 字符串列表
- 对象列表
模型类型会影响暴露给委托的属性。
默认值为1,它创建一个单独的委托实例。
另请参阅数据模型.
object : QtObject |
这是对第一个创建的对象的引用,目的是在只有一个对象被创建的情况下提供便利。
信号文档
在将对象添加到“Instantiator”时发出此信号。参数index包含分配给对象的索引,参数object包含添加的QtObject。
注意:对应的处理程序是onObjectAdded
。
在从“Instantiator”中删除对象时发出此信号。参数index包含对象原有的索引,参数object包含删除的QtObject。
如果对象是由此“Instantiator”创建的,则不要保留对object的引用,因为在处理信号后不久它将被删除。
注意:对应的处理程序是onObjectRemoved
。
方法文档
© 2024 Qt公司有限公司。此处包含的文档贡献的版权属于其各自的拥有者。本提供的文档是根据由自由软件基金会发布的GNU自由文档许可证版本1.3许可的。Qt及其相关标志是芬兰及其它国家和地区的Qt公司有限公司的商标。所有其他商标均为其各自所有者的财产。