DelegateChooser QML Type
Permet à une vue d'utiliser différents délégués pour différents types d'éléments dans le modèle. Plus d'informations...
| Import Statement: | import QtQml.Models |
| Since: | Qt 6.9 |
Propriétés
Description détaillée
Le DelegateChooser est un type spécial Component destiné aux scénarios dans lesquels un composant est requis par une vue et utilisé en tant que délégué. DelegateChooser encapsule un ensemble de DelegateChoices. Ces choix sont utilisés pour déterminer le délégué qui sera instancié pour chaque élément du modèle. La sélection du choix est effectuée en fonction de la valeur qu'un élément du modèle a pour role, ainsi qu'en fonction de l'index.
DelegateChooser est généralement utilisé lorsqu'une vue doit afficher un ensemble de délégués très différents les uns des autres. Par exemple, une vue typique des paramètres d'un téléphone peut inclure des interrupteurs à bascule, des curseurs, des boutons radio et d'autres visualisations basées sur le type de chaque paramètre. Dans ce cas, DelegateChooser pourrait permettre d'associer facilement un type de délégué différent à chaque paramètre :
import QtQml.Models
import QtQuick
import QtQuick.Controls
ListView {
width: 200; height: 400
ListModel {
id: listModel
ListElement { type: "info"; ... }
ListElement { type: "switch"; ... }
ListElement { type: "swipe"; ... }
ListElement { type: "switch"; ... }
}
DelegateChooser {
id: chooser
role: "type"
DelegateChoice { roleValue: "info"; ItemDelegate { ... } }
DelegateChoice { roleValue: "switch"; SwitchDelegate { ... } }
DelegateChoice { roleValue: "swipe"; SwipeDelegate { ... } }
}
model: listModel
delegate: chooser
}Remarque : ce type est destiné à fonctionner de manière transparente uniquement avec TableView et toute vue basée sur DelegateModel. Les vues (y compris les vues définies par l'utilisateur) qui ne sont pas basées en interne sur DelegateModel doivent explicitement prendre en charge ce type de composant pour qu'il fonctionne comme décrit.
Voir également DelegateChoice.
Documentation sur les propriétés
choices : list<DelegateChoice> [default]
La liste des DelegateChoices pour le sélecteur.
La liste est traitée comme une liste ordonnée, où le premier DelegateChoice à correspondre sera utilisé comme vue.
Il n'est généralement pas nécessaire de faire référence à la propriété choices, puisqu'il s'agit de la propriété par défaut de DelegateChooser et que tous les éléments enfants sont donc automatiquement affectés à cette propriété.
role : string
Cette propriété contient le rôle ou le nom de la propriété utilisé pour déterminer le délégué pour un élément de modèle donné.
Note : Pour les modèles basés sur QAbstractItemModel, y compris ListModel, DelegateChooser réévaluera le choix lorsque le modèle signalera que le rôle a changé. Pour tout autre type de modèle, ce choix ne sera effectué qu'une seule fois lors de la création de l'élément d'un index de modèle donné.
Voir également DelegateChoice.
© 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.