在本页

QCanvasRadialGradient Class

QCanvasRadialGradient 是一种用于径向渐变绘画的笔刷。更多

Header: #include <QCanvasRadialGradient>
CMake: find_package(Qt6 REQUIRED COMPONENTS CanvasPainter)
target_link_libraries(mytarget PRIVATE Qt6::CanvasPainter)
Qt 6.11
继承于 QCanvasGradient
状态:技术预览版

公共函数

QCanvasRadialGradient()
QCanvasRadialGradient(QPointF center, float outerRadius, float innerRadius = 0.0f)
QCanvasRadialGradient(float centerX, float centerY, float outerRadius, float innerRadius = 0.0f)
QPointF centerPosition() const
float innerRadius() const
float outerRadius() const
void setCenterPosition(float x, float y)
void setCenterPosition(QPointF center)
void setInnerRadius(float radius)
void setOuterRadius(float radius)

详细说明

径向渐变在起点和终点之间插值颜色,创建一个圆形渐变。渐变由centerPosition(),outerRadius() 和innerRadius() 控制。

下面是一个简单的示例:

QRectF rect1(0, 0, 200, 200);
QCanvasRadialGradient rg(rect1.center(), 100, 0);
rg.setColorAt(0.0, "#fdbb2d");
rg.setColorAt(0.6, "#b21f1f");
rg.setColorAt(1.0, "#1a2a6c");
p->setFillStyle(rg);
p->fillRect(rect1);

成员函数文档

QCanvasRadialGradient::QCanvasRadialGradient()

构建默认的径向梯度。梯度中心位置为(0,0)。渐变外半径为 100.0,内半径为 0.0。渐变起始颜色为白色(255, 255, 255),结束颜色为透明黑色(0, 0, 0, 0)。

QCanvasRadialGradient::QCanvasRadialGradient(QPointF center, float outerRadius, float innerRadius = 0.0f)

构建径向梯度。梯度中心位置为center 。渐变外半径为outerRadius ,内半径为innerRadius 。渐变起始颜色为白色(255,255,255),结束颜色为透明黑色(0, 0, 0, 0)。

QCanvasRadialGradient::QCanvasRadialGradient(float centerX, float centerY, float outerRadius, float innerRadius = 0.0f)

构建径向梯度。梯度中心位置为 (centerX,centerY)。渐变外半径为outerRadius ,内半径为innerRadius 。渐变起始颜色为白色(255, 255, 255),结束颜色为透明黑色(0, 0, 0, 0)。

QPointF QCanvasRadialGradient::centerPosition() const

返回径向梯度的中心点。

另请参见 setCenterPosition()。

float QCanvasRadialGradient::innerRadius() const

返回径向梯度的内半径。

另请参见 setInnerRadius()。

float QCanvasRadialGradient::outerRadius() const

返回径向梯度的外半径。

另请参见 setOuterRadius()。

void QCanvasRadialGradient::setCenterPosition(float x, float y)

将径向梯度的中心点设置为 (x,y)。

另请参见 centerPosition().

void QCanvasRadialGradient::setCenterPosition(QPointF center)

将径向梯度的中心点设置为center

这是一个重载函数。

void QCanvasRadialGradient::setInnerRadius(float radius)

将径向渐变的内半径设置为radius 。起始颜色将从中心位置开始按此半径绘制。默认的内半径为0.0 ,表示渐变直接从中心位置开始。

另请参见 innerRadius().

void QCanvasRadialGradient::setOuterRadius(float radius)

将径向渐变的外半径设置为radius 。末端颜色将从中心位置开始以该半径绘制。

另请参见 outerRadius().

© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.