Тип QML ExclusiveGroup
ExclusiveGroup предоставляет способ объявления нескольких управляемых элементов с возможностью выбора как взаимоисключающих. Подробнее...
| Заявление импорта: | import QtQuick.Controls 1.4 |
Свойства
- current : object
Методы
- void bindCheckable(object)
- void unbindCheckable(object)
Подробное описание
ExclusiveGroup может содержать несколько элементов Action, и для них автоматически будет установлено свойство Action::exclusiveGroup.
ExclusiveGroup {
id: radioInputGroup
Action {
id: dabRadioInput
text: "DAB"
checkable: true
}
Action {
id: fmRadioInput
text: "FM"
checkable: true
}
Action {
id: amRadioInput
text: "AM"
checkable: true
}
} Некоторые элементы уже поддерживают ExclusiveGroup, например, Action, MenuItem, Button и RadioButton.
Поскольку ExclusiveGroup поддерживает только Action в качестве дочерних элементов, нам необходимо вручную назначить свойство exclusiveGroup для других объектов.
GroupBox {
id: group2
title: qsTr("Tab Position")
Layout.fillWidth: true
RowLayout {
ExclusiveGroup { id: tabPositionGroup }
RadioButton {
id: topButton
text: qsTr("Top")
checked: true
exclusiveGroup: tabPositionGroup
Layout.minimumWidth: 100
}
RadioButton {
id: bottomButton
text: qsTr("Bottom")
exclusiveGroup: tabPositionGroup
Layout.minimumWidth: 100
}
}
} Добавление поддержки ExclusiveGroup
Возможно добавить поддержку ExclusiveGroup для объекта или элемента управления. Он должен иметь свойство checked, а также сигнал checkedChanged, toggled() или toggled(bool). Также его необходимо связать с ExclusiveGroup::bindCheckable() при установке его свойства типа ExclusiveGroup.
Item {
id: myItem
property bool checked: false
property ExclusiveGroup exclusiveGroup: null
onExclusiveGroupChanged: {
if (exclusiveGroup)
exclusiveGroup.bindCheckable(myItem)
}
} Приведенный выше пример демонстрирует минимальный код, необходимый для добавления поддержки ExclusiveGroup к любому элементу.
Документация по свойствам
current : object
Текущий выбранный объект. По умолчанию это первый отмеченный объект, связанный с ExclusiveGroup. Если такого нет, то по умолчанию это null.
Документация по методам
void bindCheckable(object)
Регистрирует object в группе исключений.
Вызывать эту функцию следует только при создании компонента, который вы хотите сделать совместимым с ExclusiveGroup.
См. также ExclusiveGroup::unbindCheckable().
void unbindCheckable(object)
Удаляет object из группы исключений.
Вызывать эту функцию следует только при создании компонента, который вы хотите сделать совместимым с ExclusiveGroup.
См. также ExclusiveGroup::bindCheckable().
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.14/qml-qtquick-controls-exclusivegroup.html