Тип QML ExclusiveGroup
ExclusiveGroup предоставляет способ объявления нескольких элементов управления с возможностью выбора как взаимоисключающих. Подробнее...
| Заявление об импорте: | import QtQuick.Controls 1.4 |
Свойства
- current : объект
Методы
- void bindCheckable(объект)
- void unbindCheckable(объект)
Подробное описание
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 : объект
Текущий выбранный объект. По умолчанию — первый отмеченный объект, привязанный к ExclusiveGroup. Если такого нет, то по умолчанию null.
Документация методов
void bindCheckable(объект)
Регистрация object в группе эксклюзивности.
Вы должны вызывать эту функцию только при создании компонента, который вы хотите сделать совместимым с ExclusiveGroup.
См. также ExclusiveGroup::unbindCheckable().
void unbindCheckable(объект)
Отмена регистрации object из группы эксклюзивности.
Вы должны вызывать эту функцию только при создании компонента, который вы хотите сделать совместимым с ExclusiveGroup.
См. также ExclusiveGroup::bindCheckable().
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/archives/qt-5.6/qml-qtquick-controls-exclusivegroup.html