En esta página

QCanvasBoxGradient Class

QCanvasBoxGradient es un pincel para pintar degradados. Más...

Cabecera: #include <QCanvasBoxGradient>
CMake: find_package(Qt6 REQUIRED COMPONENTS CanvasPainter)
target_link_libraries(mytarget PRIVATE Qt6::CanvasPainter)
Desde: Qt 6.11
Hereda de: QCanvasGradient
Estado: Technical Preview

Funciones Públicas

QCanvasBoxGradient()
QCanvasBoxGradient(const QRectF &rect, float feather, float radius = 0.0f)
QCanvasBoxGradient(float x, float y, float width, float height, float feather, float radius = 0.0f)
float feather() const
float radius() const
QRectF rect() const
void setFeather(float feather)
void setRadius(float radius)
void setRect(float x, float y, float width, float height)
void setRect(const QRectF &rect)

Descripción Detallada

El gradiente de caja interpola colores entre los puntos inicial y final, creando un gradiente en forma de rectángulo redondeado. Con las funciones setRadius() y setFeather() se puede controlar la redondez y suavidad del degradado.

He aquí un ejemplo sencillo:

QRectF rect(20, 20, 160, 160);
QCanvasBoxGradient bg(rect, 20, 50);
bg.setColorAt(0.0, "#1a2a6c");
bg.setColorAt(0.2, "#fdbb2d");
bg.setColorAt(1.0, QColorConstants::Transparent);
p->setFillStyle(bg);
p->fillRect(rect);

Nota: Cuando se utiliza QCanvasBoxGradient para pintar rectángulos redondeados, suele ser mejor utilizar QCanvasPainter::rect() que QCanvasPainter::roundRect() ya que el redondeo proviene del pincel y no del trazado. Esto evita la creación de vértices adicionales y por lo tanto funciona mejor.

Documentación de las funciones miembro

QCanvasBoxGradient::QCanvasBoxGradient()

Construye un gradiente de caja por defecto. La posición del degradado es (0, 0) y el tamaño (100, 100) La pluma del degradado es 10.0. El radio del degradado es 0.0. El color inicial del degradado es blanco (255, 255, 255) y el color final es negro transparente (0, 0, 0, 0).

QCanvasBoxGradient::QCanvasBoxGradient(const QRectF &rect, float feather, float radius = 0.0f)

Construye un gradiente de caja. La posición y el tamaño del degradado son rect. La pluma del degradado es feather. El radio del degradado es radius. El color inicial del degradado es blanco (255, 255, 255) y el color final es negro transparente (0, 0, 0, 0).

QCanvasBoxGradient::QCanvasBoxGradient(float x, float y, float width, float height, float feather, float radius = 0.0f)

Construye un gradiente de caja. La posición del degradado es ( x, y) y el tamaño ( width, height) La pluma del degradado es feather. El radio del degradado es radius. El color inicial del degradado es blanco (255, 255, 255) y el color final es negro transparente (0, 0, 0, 0).

float QCanvasBoxGradient::feather() const

Devuelve la pluma del degradado de la caja.

Véase también setFeather().

float QCanvasBoxGradient::radius() const

Devuelve el radio del gradiente de la caja.

Véase también setRadius().

QRectF QCanvasBoxGradient::rect() const

Devuelve el área del rectángulo del gradiente de la caja.

Véase también setRect().

void QCanvasBoxGradient::setFeather(float feather)

Establece la pluma del gradiente de caja en feather.

Véase también feather().

void QCanvasBoxGradient::setRadius(float radius)

Establece el radio del gradiente de la caja en radius. El radio máximo es la mitad de la anchura o de la altura de rect(), dependiendo de cuál sea menor.

Véase también radius().

void QCanvasBoxGradient::setRect(float x, float y, float width, float height)

Establece el rectángulo del gradiente de la caja en la posición ( x, y) y el tamaño ( width, height).

Véase también rect().

void QCanvasBoxGradient::setRect(const QRectF &rect)

Establece el rectángulo del gradiente de caja en rect.

Esta es una función sobrecargada.

© 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.