Тип QML LinearGradient
Отрисовывает линейный градиент. Подробнее...
| Заявление об импорте: | import QtGraphicalEffects 1.0 |
| С момента: | QtGraphicalEffects 1.0 |
| Наследует: |
Свойства
Подробное описание
Градиент определяется двумя или более цветами, которые плавно смешиваются. Цвета начинаются от заданной начальной точки и заканчиваются в заданной конечной точке.
| Применяемый эффект |
|---|
Примечание: Этот эффект доступен при работе с OpenGL.
Пример
Следующий пример показывает, как применить этот эффект.
import QtQuick 2.0
import QtGraphicalEffects 1.0
Item {
width: 300
height: 300
LinearGradient {
anchors.fill: parent
start: Qt.point(0, 0)
end: Qt.point(0, 300)
gradient: Gradient {
GradientStop { position: 0.0; color: "white" }
GradientStop { position: 1.0; color: "black" }
}
}
} Документация по свойствам
cached : bool
Это свойство позволяет кэшировать пиксели вывода эффекта, чтобы повысить производительность рендеринга.
Каждый раз, когда изменяются свойства источника или эффекта, пиксели в кэше должны быть обновлены. Потребление памяти увеличивается, так как для хранения вывода эффекта требуется дополнительный буфер памяти.
Рекомендуется отключить кэш, когда свойства источника или эффекта анимированы.
По умолчанию свойство установлено в false.
end : значение
Это свойство определяет конечную точку, где отрисовывается цвет с положением градиента 1.0. Цвета с меньшими значениями положения отрисовываются линейно к начальной точке. Точка задается в пикселях, а значение по умолчанию — Qt.point(0, высота). Установка значений по умолчанию для start и end приводит к линейному градиенту по всей высоте по оси y.
| Примеры вывода с различными значениями end | ||
|---|---|---|
| end: Qt.point(300, 300) | end: Qt.point(150, 150) | end: Qt.point(300, 0) |
| start: Qt.point(0, 0) | start: Qt.point(0, 0) | start: Qt.point(0, 0) |
gradient : Градиент
Градиент определяется двумя или более цветами, которые плавно смешиваются. Цвета задаются набором элементов GradientStop в качестве дочерних элементов, каждый из которых определяет положение на градиенте от 0.0 до 1.0 и цвет. Положение каждого GradientStop определяется свойством position, а цвет — свойством color.
| Примеры вывода с различными значениями gradient | ||
|---|---|---|
gradient:Gradient {
GradientStop {
position: 0.000
color: Qt.rgba(1, 0, 0, 1)
}
GradientStop {
position: 0.167
color: Qt.rgba(1, 1, 0, 1)
}
GradientStop {
position: 0.333
color: Qt.rgba(0, 1, 0, 1)
}
GradientStop {
position: 0.500
color: Qt.rgba(0, 1, 1, 1)
}
GradientStop {
position: 0.667
color: Qt.rgba(0, 0, 1, 1)
}
GradientStop {
position: 0.833
color: Qt.rgba(1, 0, 1, 1)
}
GradientStop {
position: 1.000
color: Qt.rgba(1, 0, 0, 1)
}
} |
gradient:Gradient {
GradientStop {
position: 0.0
color: "#F0F0F0"
}
GradientStop {
position: 0.5
color: "#000000"
}
GradientStop {
position: 1.0
color: "#F0F0F0"
}
} |
gradient:Gradient {
GradientStop {
position: 0.0
color: "#00000000"
}
GradientStop {
position: 1.0
color: "#FF000000"
}
} |
| start: Qt.point(0, 0) | start: Qt.point(0, 0) | start: Qt.point(0, 0) |
| end: Qt.point(300, 300) | end: Qt.point(300, 300) | end: Qt.point(300, 300) |
source : значение
Это свойство определяет элемент, который будет заполнен градиентом. Элемент источника рендерится в промежуточный буфер пикселей, а значения альфа из результата используются для определения видимости пикселей градиента на экране. Значение по умолчанию для source — неопределенное, и в этом случае вся область эффекта заполняется градиентом.
| Примеры вывода с различными значениями source | ||
|---|---|---|
| source: undefined | source: Image { source: images/butterfly.png } | |
| start: Qt.point(0, 0) | start: Qt.point(0, 0) | |
| end: Qt.point(300, 300) | end: Qt.point(300, 300) |
Примечание: Нельзя позволять эффекту включать себя, например, установив source в родителя эффекта.
start : значение
Это свойство определяет начальную точку, где отрисовывается цвет с положением градиента 0.0. Цвета с большими значениями положения отрисовываются линейно к конечной точке. Точка задается в пикселях, а значение по умолчанию — Qt.point(0, 0). Установка значений по умолчанию для start и end приводит к линейному градиенту по всей высоте по оси y.
| Примеры вывода с различными значениями start | ||
|---|---|---|
| start: QPoint(0, 0) | start: QPoint(150, 150) | start: QPoint(300, 0) |
| end: QPoint(300, 300) | end: QPoint(300, 300) | end: QPoint(300, 300) |
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.9/qml-qtgraphicaleffects-lineargradient.html