Qt之渐变及其应用(绘制温度计仪表盘和指示灯)
Posted 草上爬
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Qt之渐变及其应用(绘制温度计仪表盘和指示灯)相关的知识,希望对你有一定的参考价值。
一.效果
图中仪表盘和指示灯的边框及高亮效果使用了渐变
二.原理
Qt自带一个暴强的关于渐变的demo——gradients
该demo详细介绍的如何在QPainter中使用渐变,一共有三种类型的渐变:QLinearGradient、QRadialGradient和QConicalGradient
1.QLinearGradient是线性渐变,也就是颜色的各个分量(red, green, blue)在两点之间的变化是线性的,需要设置渐变的起始和结束坐标、颜色,超出渐变范围的填充方式,它并不能单独的使用,而是要和 QBrush 一起使用实现填充效果,主要有以下一些函数:
// 创建 QLinearGradient,同时设置起始和结束坐标
QLinearGradient(const QPointF &start, const QPointF &finalStop)
QLinearGradient(qreal x1, qreal y1, qreal x2, qreal y2)
// 设置渐变的颜色,position 的取值范围是 [0.0, 1.0]
setColorAt(qreal position, const QColor &color)
// 超出渐变范围后的填充方式,默认使用 PadSpread:
// QGradient::PadSpre
以上是关于Qt之渐变及其应用(绘制温度计仪表盘和指示灯)的主要内容,如果未能解决你的问题,请参考以下文章