Repeater3D QML Type
Instantiza una serie de componentes basados en Nodos utilizando un modelo proporcionado. Más...
| Import Statement: | import QtQuick3D |
| Inherits: | |
| Inherited By: |
Propiedades
- count : int
- delegate : Component
- delegateModelAccess : enumeration
(since 6.10) - model : any
Señales
- objectAdded(int index, Object3D object)
- objectRemoved(int index, Object3D object)
Métodos
- Object3D objectAt(index)
Descripción detallada
El tipo Repeater3D se utiliza para crear un gran número de elementos similares. Al igual que otros tipos de vista, un Repeater3D tiene un model y un delegate: para cada entrada del modelo, el delegado se instancia en un contexto sembrado con datos del modelo.
El model de un repetidor puede ser cualquiera de los modelos de datos admitidos. Además, al igual que los delegados de otras vistas, un delegado de repetidor puede acceder a su índice dentro del repetidor, así como a los datos del modelo relevantes para el delegado. Consulte la documentación de la propiedad delegate para obtener más detalles.
Nota: Un elemento Repeater3D es propietario de todos los elementos que instancia. Eliminar o destruir dinámicamente un elemento creado por un Repeater3D provoca un comportamiento impredecible.
Documentación de propiedades
count : int [read-only]
Esta propiedad contiene el número de elementos del modelo.
Nota: El número de elementos del modelo indicado por count puede diferir del número de delegados creados si Repeater3D está en proceso de instanciar delegados o está configurado incorrectamente.
delegate : Component [default]
El delegado proporciona una plantilla que define cada objeto instanciado por el repetidor.
Los delegados están expuestos a una propiedad index de sólo lectura que indica el índice del delegado dentro del repetidor.
Si model es un objeto modelo (como ListModel), el delegado puede acceder a todas las funciones del modelo como propiedades con nombre, del mismo modo que los delegados lo hacen para las clases de vista como ListView.
Véase también Modelos de datos QML.
delegateModelAccess : enumeration [since 6.10]
Esta propiedad determina cómo los delegados pueden acceder al modelo.
| Constante | Descripción |
|---|---|
DelegateModel.ReadOnly | Prohíbe a los delegados escribir el modelo a través de las propiedades de contexto, el objeto model o las propiedades requeridas. |
DelegateModel.ReadWrite | Permite a los delegados escribir el modelo a través de las propiedades de contexto, el objeto model o las propiedades requeridas. |
DelegateModel.Qt5ReadWrite | Permitir a los delegados escribir el modelo a través del objeto model y las propiedades de contexto, pero no a través de las propiedades requeridas. |
El valor por defecto es DelegateModel.Qt5ReadWrite.
Esta propiedad se introdujo en Qt 6.10.
Ver también Modelos y Vistas en Qt Quick#CambiandoDatos del Modelo.
model : any
El modelo que proporciona los datos para el repetidor.
Esta propiedad puede establecerse a cualquiera de los modelos de datos soportados:
- Un número que indica el número de delegados que debe crear el repetidor.
- Un modelo (por ejemplo, un elemento de ListModel, o una subclase de QAbstractItemModel )
- Una lista de cadenas
- Una lista de objetos
El tipo de modelo afecta a las propiedades que se exponen a delegate.
Véase también Modelos de datos.
Documentación de señales
objectAdded(int index, Object3D object)
Esta señal se emite cuando se añade un objeto al repetidor. El parámetro index contiene el índice en el que se ha insertado el objeto dentro del repetidor, y el parámetro object contiene el Object3D que se ha añadido.
El manejador correspondiente es onObjectAdded.
Nota: El manejador correspondiente es onObjectAdded.
objectRemoved(int index, Object3D object)
Esta señal se emite cuando se elimina un objeto del repetidor. El parámetro index contiene el índice en el que el elemento fue eliminado del repetidor, y el parámetro object contiene el Object3D que fue eliminado.
No mantengas una referencia a object si fue creado por este repetidor, ya que en estos casos será eliminado poco después de que se gestione la señal.
El manejador correspondiente es onObjectRemoved.
Nota: El manejador correspondiente es onObjectRemoved.
Documentación del método
Object3D objectAt(index)
Devuelve el Object3D que se ha creado en el index dado , o null si no existe ningún elemento en index.
© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.