Home · All Classes · Main Classes · Annotated · Grouped Classes · Functions

QGradient Class Reference

The QGradient class is used in combination with QBrush to specify gradient fills. More...

#include <QGradient>

Part of the QtGui module.

Inherited by QConicalGradient, QLinearGradient, and QRadialGradient.

Public Types

Public Functions

Related Non-Members


Detailed Description

The QGradient class is used in combination with QBrush to specify gradient fills.

Qt currently supports three types of gradient fills: linear, radial and conical. Each of these is represented by a subclass of QGradient: QLinearGradient, QRadialGradient and QConicalGradient.

The colors in a gradient is defined using stop points, which is a position and a color. The set of stop points describes how the gradient area should be filled. A diagonal linear gradient from black at (100, 100) to white at (200, 200) could be specified like this:

        QLinearGradient linearGrad(QPointF(100, 100), QPointF(200, 200));
        linearGrad.setColorAt(0, Qt::black);
        linearGrad.setColorAt(1, Qt::white);

A gradient can have an arbitrary number of stop points. The following would create a radial gradient starting with red in the center, blue and then green on the edges:

        QRadialGradient radialGrad(QPointF(100, 100), 100);
        radialGrad.setColorAt(0, Qt::red);
        radialGrad.setColorAt(0.5, Qt::blue);
        radialGrad.setColorAt(1, Qt::green);

It is possible to repeat or reflect the gradient outside the area by specifiying spread. The default is to pad the outside area with the color at the closest stop point.

See also QLinearGradient, QRadialGradient, and QConicalGradient.


Member Type Documentation

enum QGradient::Spread

Specifies how the areas outside the gradient area should be filled.

ConstantValueDescription
QGradient::PadSpread0The areas are filled with the closes stop color. This is the default.
QGradient::RepeatSpread2The gradient repeats outside the gradient area.
QGradient::ReflectSpread1The gradient is reflected outside the gradient area.

enum QGradient::Type

Specifies the type of gradient.

ConstantValueDescription
QGradient::LinearGradient0The gradient is a linear gradient.
QGradient::RadialGradient1The gradient is a radial gradient.
QGradient::ConicalGradient2The gradient is a conical gradient.

Member Function Documentation

void QGradient::setColorAt ( qreal pos, const QColor & color )

Sets another stop point at the relative position pos with color color. The position pos must be in the range 0 to 1.

void QGradient::setSpread ( Spread method )

Specifies the spread method that should be used for this gradient. This function only has effect for linear and radial gradients.

void QGradient::setStops ( const QGradientStops & stops )

Replaces the current set of stop points with stops. The positions of the stop points must be in the range 0 to 1 and must be sorted with the lowest point first.

Spread QGradient::spread () const

Returns the spread method use by this gradient. The default is PadSpread.

QGradientStops QGradient::stops () const

Returns the stops for this gradient.

If no stops have been spesified a gradient of black at 0 to white at 1 is used.

Type QGradient::type () const

Returns the type of gradient.


Related Non-Members

typedef QGradientStop

Typedef for QPair<qreal, QColor>.

typedef QGradientStops

Typedef for QVector<QGradientStop>.


Copyright © 2005 Trolltech Trademarks
Qt 4.0.0