Тип QML Repeater3D
Создаёт несколько компонентов на основе узлов, используя предоставленную модель. Подробнее...
| Заявление об импорте: | import QtQuick3D . |
| Наследуется от: |
Свойства
Сигналы
- objectAdded(int index, Объект3D object)
- objectRemoved(int index, Объект3D object)
Методы
- Объект3D objectAt(index)
Подробное описание
Тип Repeater3D используется для создания большого количества похожих элементов. Как и другие типы представлений, Repeater3D имеет свойство model и delegate: для каждой записи в модели delegate экземпляризуется в контексте, заполненном данными из модели.
Модель model Repeater может быть любым из поддерживаемых моделей данных. Кроме того, как и делегаты других представлений, делегат Repeater может получить доступ к своему индексу в пределах repeater, а также к данным модели, относящимся к делегату. См. документацию по свойству delegate для получения подробных сведений.
Примечание: Элемент Repeater3D владеет всеми создаваемыми им элементами. Удаление или динамическое уничтожение элемента, созданного Repeater3D, приводит к непредсказуемому поведению.
Примечание: Repeater3D основан на узле и может повторять только объекты, производные от узла.
Документация по свойствам
[только для чтения] count : int
Это свойство содержит количество элементов в модели.
Примечание: Количество элементов в модели, как указано в свойстве count, может отличаться от количества созданных делегатов, если Repeater3D находится в процессе создания делегатов или настроен некорректно.
[по умолчанию] delegate : Компонент
Делегат предоставляет шаблон, определяющий каждый объект, созданный повторно.
Делегатам доступно для чтения свойство index, которое указывает индекс делегата в repeater.
Если модель model является объектом модели (например, ListModel), делегат может получить доступ ко всем ролям модели в виде именованных свойств, так же, как это делают делегаты для классов представлений, таких как ListView.
См. также QML Модели данных.
model : любое
Модель, предоставляющая данные для repeater.
Это свойство может быть установлено на любую из поддерживаемых моделей данных:
- Число, указывающее количество делегатов, которые должны быть созданы repeater
- Модель (например, элемент ListModel или подкласс QAbstractItemModel)
- Список строк
- Список объектов
Тип модели влияет на свойства, которые доступны для delegate.
См. также Модели данных.
Документация по сигналам
objectAdded(int index, Объект3D object)
Этот сигнал испускается, когда объект добавляется в repeater. Параметр index содержит индекс, в который объект был вставлен в repeater, а параметр object содержит Объект3D, который был добавлен.
Соответствующий обработчик — onObjectAdded.
Примечание: Соответствующий обработчик — onObjectAdded.
objectRemoved(int index, Объект3D object)
Этот сигнал испускается, когда объект удаляется из repeater. Параметр index содержит индекс, из которого элемент был удалён из repeater, а параметр object содержит Объект3D, который был удалён.
Не храните ссылку на object, если он был создан этим repeater, поскольку в этих случаях он будет удалён вскоре после обработки сигнала.
Соответствующий обработчик — onObjectRemoved.
Примечание: Соответствующий обработчик — onObjectRemoved.
Документация по методам
Объект3D objectAt(index)
Возвращает Объект3D, созданный по данному индексу, или null, если элемент по индексу не существует.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-6.0/qml-qtquick3d-repeater3d.html