节点创建器 QML 类型
动态创建节点。 更多...
导入语句 | import Qt3D.Core 2.7 |
属性
- active : bool
- asynchronous : bool
- count : int
- delegate : QtQml::Component
- model : variant
- object : QtQml::QtObject
信号
- objectAdded(int index, QtObject object)
- objectRemoved(int index, QtObject object)
方法
- QtQml::QtObject objectAt(int index)
详细说明
节点创建器可用于控制节点的动态创建,或从模板动态创建多个对象。
节点创建器元素将管理它创建的对象。这些对象成为创建者的子对象,并且如果节点创建器的属性发生变化,节点创建器也可以删除它们。节点还可以通过其他方式动态销毁,除非节点创建器的属性发生变化,否则节点创建器不会重新创建它们。
属性说明
active : bool |
当 active 为 true
,并且代理组件准备好时,创建器将根据模型创建对象。当 active 为 false
,则不会创建对象,并且将销毁之前创建的对象。
默认为 true
。
asynchronous : bool |
当 asynchronous 为 true 时,创建器将尝试异步创建对象。这意味着即使将 active 设置为 true,对象也可能不可立即获得。
您可以使用 objectAdded 信号来响应对象的创建。
默认为 false
。
count : int |
即时管理对象的对象数。
delegate : QtQml::Component |
用于创建所有对象的组件。
请注意,在代理实例内部将可用一个额外的变量,即索引(index)。该变量指向实例在Instantiator中的索引,可以用它通过Instantiator的itemAt方法获取对象。
如果更改此属性,使用旧代理的所有实例将被销毁,并使用新代理创建新实例。
模型 : variant |
可以将此属性设置为任何支持的数据模型。
- 表示重复器要创建的代理数量的数字。
- 一个模型(例如,ListModel项或QAbstractItemModel子类)。
- 一个字符串列表。
- 一个对象列表。
模型类型影响暴露给代理的属性。
默认值为1,创建单个代理实例。
另请参阅数据模型。
对象 : QtQml::QtObject |
这是对第一个创建的对象的引用,用于处理只创建了一个对象的情况。
信号文档
当向NodeInstantiator添加节点时发出此信号。参数index包含分配给节点的索引,参数object包含已添加的Node。
相应的处理程序是onNodeAdded
。
注意:相应的处理程序是onObjectAdded
。
当从Instantiator中删除对象时发出此信号。参数index包含对象曾有的索引,参数object包含被删除的QtObject。
如果对象是由这个Instantiator创建的,那么不要保留对object的引用,因为在这种情况下,信号处理后会很快被删除。
相应的处理程序是onObjectRemoved
。
注意:相应的处理程序是onObjectRemoved
。
方法文档
QtQml::QtObject objectAt(int index) |
返回给定index的对象的引用。
© 2024 The Qt Company Ltd. 本文档中包含的贡献的版权属于各自的所有者。本提供在此的文档根据自由软件基金会发布的GNU自由文档许可证版本1.3的条款许可。Qt和相应的标识是The Qt Company Ltd在芬兰及其他国家/地区的商标。所有其他商标均为各自所有者的财产。