Тип QML PieMenuStyle
Предоставляет настраиваемую стилизацию для PieMenu. Подробнее...
| Заявление импорта: | import QtQuick.Controls.Styles 1.4 |
| С момента: | Qt 5.5 |
Свойства
- background : Компонент
- backgroundColor : цвет
- cancel : Компонент
- cancelRadius : вещественное
- control : PieMenu
- endAngle : вещественное
- menuItem : Компонент
- radius : вещественное
- selectionColor : цвет
- shadowColor : цвет
- shadowRadius : вещественное
- shadowSpread : вещественное
- startAngle : вещественное
- title : Компонент
Методы
- вещественное sectionCenterAngle(целое itemIndex)
- вещественное sectionEndAngle(целое itemIndex)
- вещественное sectionStartAngle(целое itemIndex)
Подробное описание
PieMenuStyle — это стиль для PieMenu, который отображает каждый сектор меню как заполненную «долю».
Вы можете создать пользовательское круговое меню, заменив следующие делегаты:
Для настройки внешнего вида каждого menuItem без необходимости определения собственного, вы можете использовать свойства backgroundColor и selectionColor. Для настройки эффекта тени используйте свойства shadowColor, shadowRadius и shadowSpread.
Иконки, слишком большие для сектора, в котором они находятся, будут соответствующим образом уменьшены.
Для стилизации отдельных секторов меню используйте компонент menuItem:
PieMenuStyle {
shadowRadius: 0
menuItem: Item {
id: item
rotation: -90 + sectionCenterAngle(styleData.index)
Rectangle {
width: parent.height * 0.2
height: width
color: "darkorange"
radius: width / 2
anchors.right: parent.right
anchors.verticalCenter: parent.verticalCenter
Text {
id: textItem
text: control.menuItems[styleData.index].text
anchors.centerIn: parent
color: control.currentIndex === styleData.index ? "red" : "white"
rotation: -item.rotation
}
}
}
} Документация по свойствам
background : Компонент
Фон меню.
По умолчанию фон не определен.
backgroundColor : цвет
Цвет фона.
cancel : Компонент
Компонент отмены меню.
Это область в центре меню, которая закрывает меню при нажатии.
По умолчанию она не отображается.
cancelRadius : вещественное
Радиус области, используемой для отмены меню.
См. также radius.
[только для чтения] control : PieMenu
Объект PieMenu, к которому прикреплен данный стиль.
endAngle : вещественное
Угол (в градусах), на котором будет отображен последний пункт меню.
Абсолютный диапазон, образованный startAngle и endAngle, должен быть меньше или равен 360 градусов.
Элементы меню отображаются по часовой стрелке, когда startAngle меньше endAngle, в противном случае они отображаются против часовой стрелки.
См. также startAngle.
menuItem : Компонент
Этот компонент определяет каждый сектор кругового меню.
Этот компонент занимает всю ширину и высоту элемента управления.
События мыши не передаются в этот компонент, что означает, что элементы управления, такие как Button, не будут работать, если используются в нём. Вы можете проверить, находится ли курсор мыши над этим сектором, сравнив control.currentIndex с styleData.index.
Каждый экземпляр этого компонента имеет доступ к следующим свойствам:
readonly property int styleData.index
|
Индекс этого элемента меню. |
readonly property bool styleData.hovered
|
true если этот элемент меню находится под курсором мыши. |
readonly property bool styleData.pressed
|
true если кнопка мыши нажата на этом элементе меню. |
[только для чтения] radius : вещественное
Расстояние от центра меню до внешнего края меню.
См. также cancelRadius.
selectionColor : цвет
Цвет выделения.
shadowColor : цвет
Цвет тени.
См. также DropShadow.
shadowRadius : вещественное
Радиус тени.
См. также DropShadow.
shadowSpread : вещественное
Распространение тени.
См. также DropShadow.
startAngle : вещественное
Угол (в градусах), с которого будет отображаться первый элемент меню.
Абсолютный диапазон, образованный startAngle и endAngle, должен быть меньше или равен 360 градусам.
Элементы меню отображаются по часовой стрелке, когда startAngle меньше endAngle, в противном случае они отображаются против часовой стрелки.
См. также endAngle.
title : Компонент
Компонент, отображающий текст текущего выделенного элемента меню или заголовок, если текущего элемента нет.
Текст текущего элемента доступен через свойство styleData.text.
Документация по методам
вещественное sectionCenterAngle(целое itemIndex)
Возвращает центр сектора по itemIndex в градусах.
вещественное sectionEndAngle(целое itemIndex)
Возвращает конец сектора по itemIndex в градусах.
вещественное sectionStartAngle(целое itemIndex)
Возвращает начало сектора по itemIndex в градусах.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.14/qml-qtquick-controls-styles-piemenustyle.html