QPaintEngineState Class

QPaintEngineState 类提供有关活动油漆引擎当前状态的信息。更多

Header: #include <QPaintEngineState>
CMake: find_package(Qt6 REQUIRED COMPONENTS Gui)
target_link_libraries(mytarget PRIVATE Qt6::Gui)
qmake: QT += gui

注意:该类中的所有函数都是可重入的

公共函数

QBrush backgroundBrush() const
Qt::BGMode backgroundMode() const
QBrush brush() const
bool brushNeedsResolving() const
QPointF brushOrigin() const
Qt::ClipOperation clipOperation() const
QPainterPath clipPath() const
QRegion clipRegion() const
QPainter::CompositionMode compositionMode() const
QFont font() const
bool isClipEnabled() const
qreal opacity() const
QPainter *painter() const
QPen pen() const
bool penNeedsResolving() const
QPainter::RenderHints renderHints() const
QPaintEngine::DirtyFlags state() const
QTransform transform() const

详细说明

QPaintEngineState 记录了自上次更新绘画引擎以来发生变化的属性及其当前值。

可随时使用state() 函数检索已更改的属性。该函数返回一个QPaintEngine::DirtyFlags 类型的实例,其中存储了QPaintEngine::DirtyFlag 值的 OR 组合。QPaintEngine::DirtyFlag 枚举定义了属性在上次更新后是否发生了变化。

如果属性被标记为 dirty 标志,则可使用相应的 get 函数获取其当前值:

QPaintEngineState 类还提供painter() 函数,该函数返回一个指向当前正在更新油漆引擎的油漆工的指针。

QPaintEngine::updateState() 函数的参数传递给该类的一个实例,该实例代表当前活动绘画引擎的状态。只有在实现自己的绘制引擎时,才需要直接使用该类。

另请参阅 QPaintEngine

成员函数文档

QBrush QPaintEngineState::backgroundBrush() const

返回当前绘画引擎状态下的背景画笔。

该变量只能在state() 返回包含QPaintEngine::DirtyBackground 标志的组合时使用。

另请参阅 state() 和QPaintEngine::updateState()。

Qt::BGMode QPaintEngineState::backgroundMode() const

返回当前绘画引擎状态下的背景模式。

该变量只能在state() 返回包含QPaintEngine::DirtyBackgroundMode 标志的组合时使用。

另请参阅 state() 和QPaintEngine::updateState()。

QBrush QPaintEngineState::brush() const

返回当前绘画引擎状态下的画笔。

该变量只能在state() 返回包含QPaintEngine::DirtyBrush 标志的组合时使用。

另请参阅 state() 和QPaintEngine::updateState()。

bool QPaintEngineState::brushNeedsResolving() const

返回填充的坐标是否已被指定为当前渲染操作的边界,并且必须被解析(关于当前渲染的基底)。

QPointF QPaintEngineState::brushOrigin() const

返回当前绘画引擎状态下的画笔原点。

该变量只能在state() 返回包含QPaintEngine::DirtyBrushOrigin 标志的组合时使用。

另请参阅 state() 和QPaintEngine::updateState()。

Qt::ClipOperation QPaintEngineState::clipOperation() const

返回当前绘画引擎状态下的剪辑操作。

只有当state() 返回的组合包含QPaintEngine::DirtyClipPathQPaintEngine::DirtyClipRegion 标志时,才能使用此变量。

另请参阅 state() 和QPaintEngine::updateState()。

QPainterPath QPaintEngineState::clipPath() const

返回当前绘制引擎状态下的剪辑路径。

该变量只能在state() 返回包含QPaintEngine::DirtyClipPath 标志的组合时使用。

另请参阅 state() 和QPaintEngine::updateState()。

QRegion QPaintEngineState::clipRegion() const

返回当前绘制引擎状态下的剪辑区域。

该变量只能在state() 返回包含QPaintEngine::DirtyClipRegion 标志的组合时使用。

另请参阅 state() 和QPaintEngine::updateState()。

QPainter::CompositionMode QPaintEngineState::compositionMode() const

返回当前绘画引擎状态下的合成模式。

只有当state() 返回的组合包含QPaintEngine::DirtyCompositionMode 标志时,才能使用此变量。

另请参阅 state() 和QPaintEngine::updateState()。

QFont QPaintEngineState::font() const

返回当前油漆引擎状态下的字体。

该变量只能在state() 返回包含QPaintEngine::DirtyFont 标志的组合时使用。

另请参阅 state() 和QPaintEngine::updateState()。

bool QPaintEngineState::isClipEnabled() const

返回当前绘制引擎状态下是否启用剪切功能。

该变量只能在state() 返回包含QPaintEngine::DirtyClipEnabled 标志的组合时使用。

另请参阅 state() 和QPaintEngine::updateState()。

qreal QPaintEngineState::opacity() const

返回当前喷涂引擎状态下的不透明度。

QPainter *QPaintEngineState::painter() const

返回当前正在更新喷涂引擎的喷涂器指针。

QPen QPaintEngineState::pen() const

返回当前绘画引擎状态下的笔。

该变量只能在state() 返回包含QPaintEngine::DirtyPen 标志的组合时使用。

另请参阅 state() 和QPaintEngine::updateState()。

bool QPaintEngineState::penNeedsResolving() const

返回描边坐标是否已被指定为当前渲染操作的边界,并且必须进行解析(关于当前渲染的基底)。

QPainter::RenderHints QPaintEngineState::renderHints() const

返回当前绘画引擎状态下的渲染提示。

该变量只能在state() 返回包含QPaintEngine::DirtyHints 标志的组合时使用。

另请参阅 state() 和QPaintEngine::updateState()。

QPaintEngine::DirtyFlags QPaintEngineState::state() const

返回一组标志,用于标识在更新喷涂引擎状态时(即调用QPaintEngine::updateState() 函数时)需要更新的属性集。

另请参见 QPaintEngine::updateState()。

QTransform QPaintEngineState::transform() const

返回当前油漆引擎状态下的矩阵。

该变量只能在state() 返回包含QPaintEngine::DirtyTransform 标志的组合时使用。

另请参阅 state() 和QPaintEngine::updateState()。

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