Выбор делегата QML Тип
Позволяет представлению использовать разные делегаты для разных типов элементов в модели. Подробнее...
| Заявление импорта: | import Qt.labs.qmlmodels 1.0 |
Свойства
Подробное описание
ВыборДелегата — это специальный тип компонента, предназначенный для тех сценариев, где представление требует компонента и используется в качестве делегата. ВыборДелегата инкапсулирует набор выборов делегата. Эти выборы используются для определения делегата, который будет создан для каждого элемента в модели. Выбор выбора выполняется на основе значения, которое элемент модели имеет для роли, а также на основе индекса.
ВыборДелегата обычно используется, когда представлению нужно отобразить набор делегатов, которые существенно различаются друг от друга. Например, типичное представление настроек телефона может включать переключатели, ползунки, радиокнопки и другие визуализации в зависимости от типа каждой настройки. В этом случае ВыборДелегата может предоставить простой способ связать с каждой настройкой разный тип делегата:
import QtQuick 2.14
import QtQuick.Controls 2.14
import Qt.labs.qmlmodels 1.0
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
} Примечание: Этот тип предназначен для прозрачной работы только с TableView и любым представлением на основе DelegateModel. Представления (включая пользовательские представления), которые не основаны внутри на DelegateModel, должны явно поддерживать этот тип компонента, чтобы он функционировал как описано.
См. также ВыборДелегата.
Документация свойств
[по умолчанию] choices : список<ВыборДелегата>
Список выборов делегатов для выбора.
Список обрабатывается как упорядоченный список, где первый ВыборДелегата, который соответствует, будет использоваться представлением.
В целом не должно быть необходимости ссылаться на свойство choices, так как это свойство по умолчанию для ВыборДелегата, и поэтому все дочерние элементы автоматически назначаются этому свойству.
роль : строка
Это свойство содержит роль, используемую для определения делегата для данного элемента модели.
См. также ВыборДелегата.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.14/qml-qt-labs-qmlmodels-delegatechooser.html