Instantiator QML Type
Crée des objets de manière dynamique. En savoir plus…
| Import Statement: | import QtQml.Models |
Propriétés
- active : bool
- asynchronous : bool
- count : int
- delegate : QtQml::Component
- delegateModelAccess : enumeration
(since 6.10) - model : variant
- object : QtObject
Signaux
- objectAdded(int index, QtObject object)
- objectRemoved(int index, QtObject object)
Méthodes
- QtObject objectAt(int index)
Description détaillée
Un Instantiator peut être utilisé pour contrôler la création dynamique d'objets, ou pour créer dynamiquement plusieurs objets à partir d'un modèle.
L'élément Instantiator gère les objets qu'il crée. Ces objets sont rattachés à l'Instantiator et peuvent également être supprimés par celui-ci si ses propriétés changent. Les objets peuvent également être détruits de manière dynamique par d'autres moyens, et l'Instantiator ne les recréera pas à moins que ses propriétés ne changent.
Remarque : l’Instantiator fait partie de QtQml.Models depuis la version 2.14 et de QtQml depuis la version 2.1. L’importation de l’Instantiator via QtQml est obsolète depuis Qt 5.14.
Documentation des propriétés
active : bool
Lorsque la valeur « active » est « true » et que le composant délégué est prêt, l'Instantiator créera des objets conformément au modèle. Lorsque la valeur « active » est « false », aucun objet ne sera créé et tous les objets créés précédemment seront détruits.
La valeur par défaut est « true ».
asynchronous : bool
Lorsque la valeur « asynchrone » est définie sur « true », l'Instantiator tentera de créer des objets de manière asynchrone. Cela signifie que les objets peuvent ne pas être disponibles immédiatement, même si la valeur « active » est définie sur « true ».
Vous pouvez utiliser le signal « objectAdded » pour être averti de la création d'éléments.
La valeur par défaut est « false ».
count : int [read-only]
Nombre d'objets actuellement gérés par l'Instantiator.
delegate : QtQml::Component [default]
Le composant utilisé pour créer tous les objets.
Notez qu'une variable supplémentaire, index, sera disponible au sein des instances du délégué. Cette variable fait référence à l'index de l'instance au sein de l'Instantiator, et peut être utilisée pour obtenir l'objet via la méthode objectAt de l'Instantiator.
Si cette propriété est modifiée, toutes les instances utilisant l'ancien délégué seront détruites et de nouvelles instances seront créées à l'aide du nouveau délégué.
delegateModelAccess : enumeration [since 6.10]
Cette propriété détermine la manière dont les délégués peuvent accéder au modèle.
| Constante | Description |
|---|---|
DelegateModel.ReadOnly | Interdit aux délégués d’écrire dans le modèle via les propriétés de contexte, l’objet ` model ` ou les propriétés obligatoires. |
DelegateModel.ReadWrite | Autorise les délégués à modifier le modèle via les propriétés de contexte, l'objet ` model ` ou les propriétés obligatoires. |
DelegateModel.Qt5ReadWrite | Autorise les délégués à modifier le modèle via l’objet ` model ` et les propriétés de contexte, mais pas via les propriétés obligatoires. |
La valeur par défaut est ` DelegateModel.Qt5ReadWrite`.
Cette propriété a été introduite dans Qt 6.10.
Voir également Modèles et vues dans Qt Quick#Modification des données du modèle.
model : variant
Cette propriété peut être définie sur n'importe lequel des modèles de données pris en charge :
- Un nombre indiquant le nombre de délégués à créer par le répéteur
- Un modèle (par exemple, un élément « ListModel » ou une sous-classe de « QAbstractItemModel »)
- Une liste de chaînes de caractères
- Une liste d’objets
Le type de modèle influe sur les propriétés exposées à l'delegate.
La valeur par défaut est 1, ce qui crée une seule instance de délégué.
Voir également Modèles de données.
object : QtObject [read-only]
Il s'agit d'une référence à l'objet créé en premier, destinée à faciliter les choses dans le cas où un seul objet aurait été créé.
Documentation sur les signaux
objectAdded(int index, QtObject object)
Ce signal est émis lorsqu'un objet est ajouté à l'Instantiator. Le paramètre « index » contient l'index attribué à l'objet, et le paramètre « object » contient l'QtObject e qui a été ajouté.
Remarque : le gestionnaire correspondant est onObjectAdded.
objectRemoved(int index, QtObject object)
Ce signal est émis lorsqu'un objet est supprimé de l'Instantiator. Le paramètre « index » contient l'index qui avait été attribué à l'objet, et le paramètre « object » contient l'QtObject qui a été supprimée.
Ne conservez pas de référence à ` object ` s’il a été créé par cet Instantiator, car dans ce cas, il sera supprimé peu après la gestion du signal.
Remarque : le gestionnaire correspondant est onObjectRemoved.
Documentation de la méthode
QtObject objectAt(int index)
Renvoie une référence à l'objet dont l'index ion est spécifiée.
© 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.