Класс QGraphicsOpacityEffect
Класс QGraphicsOpacityEffect предоставляет эффект непрозрачности. Подробнее...
| Заголовок: | #include <QGraphicsOpacityEffect> |
| qmake: | QT += widgets |
| С тех пор: | Qt 4.6 |
| Наследуется от: | QGraphicsEffect |
Этот класс был представлен в Qt 4.6.
Свойства
- opacity : qreal
- opacityMask : QBrush
Открытые функции
| QGraphicsOpacityEffect(QObject *parent = nullptr) | |
| virtual | ~QGraphicsOpacityEffect() |
| qreal | opacity() const |
| QBrush | opacityMask() const |
Открытые слоты
| void | setOpacity(qreal opacity) |
| void | setOpacityMask(const QBrush &mask) |
Сигналы
| void | opacityChanged(qreal opacity) |
| void | opacityMaskChanged(const QBrush &mask) |
Переопределённые защищённые функции
| virtual void | draw(QPainter *painter) override |
Подробное описание
Эффект непрозрачности отображает исходный элемент с указанной непрозрачностью. Этот эффект полезен для создания полупрозрачного исходного элемента, аналогично эффекту плавного затемнения/высветления. Непрозрачность может быть изменена с помощью функции setOpacity().
По умолчанию непрозрачность составляет 0,7.
См. также QGraphicsDropShadowEffect, QGraphicsBlurEffect и QGraphicsColorizeEffect.
Документация по свойствам
opacity : qreal
Это свойство содержит непрозрачность эффекта.
Значение должно быть в диапазоне от 0,0 до 1,0, где 0,0 — полностью прозрачный, а 1,0 — полностью непрозрачный.
По умолчанию непрозрачность составляет 0,7.
Функции доступа:
| qreal | opacity() const |
| void | setOpacity(qreal opacity) |
Сигнал уведомления:
| void | opacityChanged(qreal opacity) |
См. также setOpacityMask().
opacityMask : QBrush
Это свойство содержит маску непрозрачности эффекта.
Маска непрозрачности позволяет применять непрозрачность к частям элемента.
Например:
... 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; effect->setOpacityMask(alphaGradient); ...
По умолчанию маска непрозрачности не задана.
Функции доступа:
| QBrush | opacityMask() const |
| void | setOpacityMask(const QBrush &mask) |
Сигнал уведомления:
| void | opacityMaskChanged(const QBrush &mask) |
См. также setOpacity().
Документация по членам-функциям
QGraphicsOpacityEffect::QGraphicsOpacityEffect(QObject *parent = nullptr)
Создаёт новый экземпляр QGraphicsOpacityEffect. Параметр parent передаётся конструктору QGraphicsEffect.
[signal] void QGraphicsOpacityEffect::opacityChanged(qreal opacity)
Этот сигнал испускается всякий раз, когда непрозрачность эффекта изменяется. Параметр opacity содержит новую непрозрачность эффекта.
Примечание: Сигнал уведомления для свойства opacity.
[signal] void QGraphicsOpacityEffect::opacityMaskChanged(const QBrush &mask)
Этот сигнал испускается всякий раз, когда маска непрозрачности эффекта изменяется. Параметр mask содержит новую маску непрозрачности эффекта.
Примечание: Сигнал уведомления для свойства opacityMask.
[virtual] QGraphicsOpacityEffect::~QGraphicsOpacityEffect()
Удаляет эффект.
[override virtual protected] void QGraphicsOpacityEffect::draw(QPainter *painter)
Переопределяет: QGraphicsEffect::draw(QPainter *painter).
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.15/qgraphicsopacityeffect.html