DelegateChooser QML Type
Ermöglicht einer Ansicht, verschiedene Delegierte für verschiedene Arten von Elementen im Modell zu verwenden. Mehr...
Import Statement: | import Qt.labs.qmlmodels |
Eigenschaften
Detaillierte Beschreibung
Der DelegateChooser ist ein spezieller Component Typ, der für jene Szenarien gedacht ist, in denen eine Komponente von einer Ansicht benötigt und als Delegat verwendet wird. DelegateChooser kapselt einen Satz von DelegateChoices. Diese Auswahlmöglichkeiten werden verwendet, um den Delegaten zu bestimmen, der für jedes Element im Modell instanziiert wird. Die Auswahl der Wahl wird auf der Grundlage des Wertes, den ein Modellelement für role hat, und auch auf der Grundlage des Indexes durchgeführt.
DelegateChooser wird üblicherweise verwendet, wenn eine Ansicht einen Satz von Delegaten anzeigen muss, die sich deutlich voneinander unterscheiden. Eine typische Ansicht für Telefoneinstellungen kann beispielsweise Kippschalter, Schieberegler, Optionsfelder und andere Visualisierungen enthalten, die auf dem Typ jeder Einstellung basieren. In diesem Fall könnte DelegateChooser eine einfache Möglichkeit bieten, einen anderen Typ von Delegaten mit jeder Einstellung zu verknüpfen:
import QtQuick import QtQuick.Controls import Qt.labs.qmlmodels 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 }
Hinweis: Dieser Typ soll transparent nur mit TableView und jeder DelegateModel-basierten Ansicht funktionieren. Ansichten (einschließlich benutzerdefinierter Ansichten), die intern nicht auf DelegateModel basieren, müssen diesen Komponententyp explizit unterstützen, damit er wie beschrieben funktioniert.
Siehe auch DelegateChoice.
Dokumentation der Eigenschaften
choices : list<DelegateChoice> |
Die Liste der DelegateChoices für den Chooser.
Die Liste wird als geordnete Liste behandelt, wobei die erste DelegateChoice, die passt, als Ansicht verwendet wird.
Im Allgemeinen sollte es nicht notwendig sein, auf die Eigenschaft choices
zu verweisen, da sie die Standardeigenschaft für DelegateChooser ist und daher alle untergeordneten Elemente automatisch dieser Eigenschaft zugewiesen werden.
role : string |
Diese Eigenschaft enthält die Rolle oder den Eigenschaftsnamen, der verwendet wird, um den Delegierten für ein bestimmtes Modellelement zu bestimmen.
Hinweis: Für QAbstractItemModel basierte Modelle, einschließlich ListModel, wird DelegateChooser die Auswahl neu bewerten, wenn das Modell signalisiert, dass sich die Rolle geändert hat. Für jeden anderen Modelltyp wird diese Wahl nur einmal getroffen, wenn das Element für einen bestimmten Modellindex erstellt wird.
Siehe auch DelegateChoice.
© 2025 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.