QGraphicsBlurEffect Class
QGraphicsBlurEffect 类提供了一种模糊效果。更多
Header: | #include <QGraphicsBlurEffect> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS Widgets) target_link_libraries(mytarget PRIVATE Qt6::Widgets) |
qmake: | QT += widgets |
继承: | QGraphicsEffect |
公共类型
属性
- blurHints : BlurHints
- blurRadius : qreal
公共函数
QGraphicsBlurEffect(QObject *parent = nullptr) | |
virtual | ~QGraphicsBlurEffect() |
QGraphicsBlurEffect::BlurHints | blurHints() const |
qreal | blurRadius() const |
重新实现的公共函数
virtual QRectF | boundingRectFor(const QRectF &rect) const override |
公共插槽
void | setBlurHints(QGraphicsBlurEffect::BlurHints hints) |
void | setBlurRadius(qreal blurRadius) |
信号
void | blurHintsChanged(QGraphicsBlurEffect::BlurHints hints) |
void | blurRadiusChanged(qreal radius) |
重新实现的受保护函数
virtual void | draw(QPainter *painter) override |
详细说明
模糊效果会模糊信号源。这种效果对于减少细节非常有用,例如当信号源失去焦点时,您希望将注意力吸引到其他元素上。可以使用setBlurRadius() 函数修改细节程度。使用setBlurHints() 选择模糊提示。
默认情况下,模糊半径为 5 像素。模糊半径以设备坐标指定。
另请参阅 QGraphicsDropShadowEffect,QGraphicsColorizeEffect, 和QGraphicsOpacityEffect 。
成员类型文档
枚举 QGraphicsBlurEffect::BlurHint
flagsQGraphicsBlurEffect::BlurHints
此枚举描述了可用于控制模糊效果应用方式的可能提示。这些提示可能不会对所有绘画引擎都有效。
常量 | 值 | 说明 |
---|---|---|
QGraphicsBlurEffect::PerformanceHint | 0x00 | 表示渲染性能是最重要的因素,但可能会降低质量。 |
QGraphicsBlurEffect::QualityHint | 0x01 | 表示渲染质量是最重要的因素,但可能会降低性能。 |
QGraphicsBlurEffect::AnimationHint | 0x02 | 表示模糊半径将被动画化,暗示实现过程中可以对源的模糊版本进行缓存。如果源会动态变化,请勿使用此提示。 |
BlurHints 类型是QFlags<BlurHint> 的类型定义。它存储 BlurHint 值的 OR 组合。
另请参阅 blurHints() 和setBlurHints()。
属性文档
blurHints : BlurHints
此属性包含效果的模糊提示。
如果您想要更快的模糊效果,请使用PerformanceHint 提示;如果您想要更高质量的模糊效果,请使用QualityHint 提示;如果您想要将模糊半径做成动画,请使用AnimationHint 提示。
默认情况下,模糊提示是PerformanceHint 。
访问功能:
QGraphicsBlurEffect::BlurHints | blurHints() const |
void | setBlurHints(QGraphicsBlurEffect::BlurHints hints) |
通知信号:
void | blurHintsChanged(QGraphicsBlurEffect::BlurHints hints) |
blurRadius : qreal
该属性表示效果的模糊半径。
半径越小,效果越清晰,半径越大,效果越模糊。
默认情况下,模糊半径为 5 像素。
半径以设备坐标为单位,这意味着它不受缩放比例的影响。
访问功能:
qreal | blurRadius() const |
void | setBlurRadius(qreal blurRadius) |
Notifier 信号:
void | blurRadiusChanged(qreal radius) |
成员函数 文档
QGraphicsBlurEffect::QGraphicsBlurEffect(QObject *parent = nullptr)
构造一个新的 QGraphicsBlurEffect 实例。parent 参数传递给QGraphicsEffect 的构造函数。
[virtual noexcept]
QGraphicsBlurEffect::~QGraphicsBlurEffect()
破坏效果。
[signal]
void QGraphicsBlurEffect::blurHintsChanged(QGraphicsBlurEffect::BlurHints hints)
每当特效的模糊提示发生变化时,就会发出该信号。hints 参数包含效果的新模糊提示。
注: 属性blurHints 的通知信号。
[signal]
void QGraphicsBlurEffect::blurRadiusChanged(qreal radius)
每当特效的模糊半径发生变化时,就会发出该信号。radius 参数包含效果的新模糊半径。
注: 属性blurRadius 的通知信号。
[override virtual]
QRectF QGraphicsBlurEffect::boundingRectFor(const QRectF &rect) const
重实现:QGraphicsEffect::boundingRectFor(const QRectF &rect) const.
[override virtual protected]
void QGraphicsBlurEffect::draw(QPainter *painter)
重实现:QGraphicsEffect::draw(QPainter *painter).
© 2025 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.