QGraphicsOpacityEffect Class

The QGraphicsOpacityEffect class provides an opacity effect. More...

Header: #include <QGraphicsOpacityEffect>
qmake: QT += widgets
Since: Qt 4.6
Inherits: QGraphicsEffect


Public Functions

QGraphicsOpacityEffect(QObject *parent = Q_NULLPTR)
qreal opacity() const
QBrush opacityMask() const

Public Slots

void setOpacity(qreal opacity)
void setOpacityMask(const QBrush &mask)


void opacityChanged(qreal opacity)
void opacityMaskChanged(const QBrush &mask)

Reimplemented Protected Functions

virtual void draw(QPainter *painter)

Additional Inherited Members

  • 11 static public members inherited from QObject
  • 7 protected functions inherited from QGraphicsEffect
  • 9 protected functions inherited from QObject

Detailed Description

The QGraphicsOpacityEffect class provides an opacity effect.

An opacity effect renders the source with an opacity. This effect is useful for making the source semi-transparent, similar to a fade-in/fade-out sequence. The opacity can be modified using the setOpacity() function.

By default, the opacity is 0.7.

See also QGraphicsDropShadowEffect, QGraphicsBlurEffect, and QGraphicsColorizeEffect.

Property Documentation

opacity : qreal

This property holds the opacity of the effect.

The value should be in the range of 0.0 to 1.0, where 0.0 is fully transparent and 1.0 is fully opaque.

By default, the opacity is 0.7.

Access functions:

qreal opacity() const
void setOpacity(qreal opacity)

Notifier signal:

void opacityChanged(qreal opacity)

See also setOpacityMask().

opacityMask : QBrush

This property holds the opacity mask of the effect.

An opacity mask allows you apply opacity to portions of an element.

For example:

QLinearGradient alphaGradient(rect.topLeft(), rect.bottomLeft());
alphaGradient.setColorAt(0.0, Qt::transparent);
alphaGradient.setColorAt(0.5, Qt::black);
alphaGradient.setColorAt(1.0, Qt::transparent);
QGraphicsOpacityEffect *effect = new QGraphicsOpacityEffect;

There is no opacity mask by default.

Access functions:

QBrush opacityMask() const
void setOpacityMask(const QBrush &mask)

Notifier signal:

void opacityMaskChanged(const QBrush &mask)

See also setOpacity().

Member Function Documentation

QGraphicsOpacityEffect::QGraphicsOpacityEffect(QObject *parent = Q_NULLPTR)

Constructs a new QGraphicsOpacityEffect instance. The parent parameter is passed to QGraphicsEffect's constructor.


Destroys the effect.

[virtual protected] void QGraphicsOpacityEffect::draw(QPainter *painter)

Reimplemented from QGraphicsEffect::draw().

[signal] void QGraphicsOpacityEffect::opacityChanged(qreal opacity)

This signal is emitted whenever the effect's opacity changes. The opacity parameter holds the effect's new opacity.

Note: Notifier signal for property opacity.

[signal] void QGraphicsOpacityEffect::opacityMaskChanged(const QBrush &mask)

This signal is emitted whenever the effect's opacity mask changes. The mask parameter holds the effect's new opacity mask.

Note: Notifier signal for property opacityMask.

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