Класс QGraphicsOpacityEffect
Класс QGraphicsOpacityEffect предоставляет эффект непрозрачности. Подробнее...
| Заголовок: | #include <QGraphicsOpacityEffect> |
| CMake: | find_package(Qt6 COMPONENTS Widgets REQUIRED) target_link_libraries(mytarget PRIVATE Qt6::Widgets) |
| qmake: | QT += widgets |
| Наследует: | QGraphicsEffect |
Свойства
- 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-6.2/qgraphicsopacityeffect.html