Qt 绘图渐变填充

Qt 绘图渐变填充,第1张

QGradient 可以和 QBrush 组合使用,来指定渐变填充。

Qt 目前支持三种类型的渐变填充:

1、QLinearGradient:显示从起点到终点的渐变

2、QRadialGradient:以圆心为中心显示渐变

3、QConicalGradient:围绕一个中心点显示渐变

渐变类型可以使用 type() 函数来检索,类型中的每一个都是 QGradient 的子类。

效果:

QLinearGradient 构造函数的第一个参数指定起点,第二个参数指定终点,然后显示渐变。函数setColorAt() 用于设置起点和终点之间要显示的颜色,setSpread() 可以设置起点和终点区域之外的显示模式。

QRadialGradient 类以圆心为中心显示渐变。(cx, cy) 是中点,半径(radius)是以中点为圆心的圆的半径,(fx, fy) 是渐变的起点。

效果:

QRadialGradient 构造函数的第一个参数和第二个参数是 (cx, cy) 坐标,第三个参数是半径,第四个和第五个参数是 (fx, fy) 坐标。

QConicalGradient 在 (cx, cy) 坐标上以角度 (angle) 为中心显示渐变。

效果:

1.首先,我们到网站下载源码包,加压源码包到磁盘。

2.由于编译QtWekbit需要ICU andANGLE 库,ICU库需要单独下载和编译,从下载ICU4Cversion 56.1并解压到磁盘,目录位置参见随后说明。

3.在Qt 5.5.1的源码包中还存在一个BUG,如果直接编译的话在编译QT3D模块的时候会报没有找到Zlib.h的错误而中断编译,所以参照如下提示修改qt-everywhere-opensource-src-5.5.1\qt3d\src\3rdparty\assimp目录下的assimp.pri文件。可参考地址。

4.在编译QT5.5.1之前还需要安装配置一下的工具和环境:

5.经过上面的步骤可以开始进行编译ICU4C version 56.1和QT5.5.1的源码了

6.如果以上的配置都正确的话开机让机器编译几个小时后就可以在目标路径下生成QT5.5.1的运行文件。

3种方法:

//方法一: 直接重写主窗口的paintEvent事件,然后用QPainter绘制即可

QRectF rectangle(10.0, 20.0, 60.0, 60.0)

int startAngle = 0* 16

int spanAngle = 360* 16

QPainter painter(this)

painter.drawArc(rectangle, startAngle, spanAngle)

// 方法二:新建一个QWidget类,重写paintEvent方法,同样画圆,然后将这个类添加进来

// 或者是UI的话,提升控件即可。

// 代码同方法一

// 方法三: 用背景图片进行样式设置。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/bake/11547204.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-16
下一篇2023-05-16

发表评论

登录后才能评论

评论列表(0条)

    保存