QStylePainter class is a convenience class for drawing QStyle 元素在 Widget 内。 更多...
头: | #include <QStylePainter> |
qmake: | QT += widgets |
继承: | QPainter |
QStylePainter () | |
QStylePainter (QWidget * widget ) | |
QStylePainter (QPaintDevice * pd , QWidget * widget ) | |
bool | begin (QWidget * widget ) |
bool | begin (QPaintDevice * pd , QWidget * widget ) |
void | drawComplexControl (QStyle::ComplexControl cc , const QStyleOptionComplex & option ) |
void | drawControl (QStyle::ControlElement ce , const QStyleOption & option ) |
void | drawItemPixmap (const QRect & rect , int flags , const QPixmap & pixmap ) |
void | drawItemText (const QRect & rect , int flags , const QPalette & pal , bool enabled , const QString & text , QPalette::ColorRole textRole = QPalette::NoRole) |
void | drawPrimitive (QStyle::PrimitiveElement pe , const QStyleOption & option ) |
QStyle * | style () const |
QStylePainter class is a convenience class for drawing QStyle 元素在 Widget 内。
QStylePainter
extends
QPainter
采用一组高级
draw...()
函数实现在顶部基于
QStyle
's API. The advantage of using
QStylePainter
is that the parameter lists get considerably shorter. Whereas a
QStyle
对象能够在任何 Widget 中绘制必须使用任何描绘器 (因为应用程序通常有一
QStyle
object shared by all widget), a
QStylePainter
is initialized with a widget, eliminating the need to specify the
QWidget
,
QPainter
,和
QStyle
对于每个函数调用。
范例使用 QStyle 直接:
void MyWidget::paintEvent(QPaintEvent * /* event */) { QPainter painter(this); QStyleOptionFocusRect option; option.initFrom(this); option.backgroundColor = palette().color(QPalette::Background); style()->drawPrimitive(QStyle::PE_FrameFocusRect, &option, &painter, this); }
范例使用 QStylePainter :
void MyWidget::paintEvent(QPaintEvent * /* event */) { QStylePainter painter(this); QStyleOptionFocusRect option; option.initFrom(this); option.backgroundColor = palette().color(QPalette::Background); painter.drawPrimitive(QStyle::PE_FrameFocusRect, option); }
另请参阅 QStyle and QStyleOption .
构造 QStylePainter .
构造 QStylePainter using widget widget 对于其描绘设备。
构造 QStylePainter 使用 pd 对于其描绘设备,且属性来自 widget .
Begin painting operations on the specified
widget
。返回
true
if the painter is ready to use; otherwise returns
false
.
This is automatically called by the constructor that takes a QWidget .
这是重载函数。
Begin painting operations on paint device pd as if it was widget .
This is automatically called by the constructor that takes a QPaintDevice 和 QWidget .
Use the widget's style to draw a complex control cc specified by the QStyleOptionComplex option .
另请参阅 QStyle::drawComplexControl ().
Use the widget's style to draw a control element ce 指定通过 QStyleOption option .
另请参阅 QStyle::drawControl ().
绘制 pixmap in rectangle rect . The pixmap is aligned according to flags .
另请参阅 QStyle::drawItemPixmap () 和 Qt::Alignment .
绘制 text in rectangle rect and palette pal . The text is aligned and wrapped according to flags .
The pen color is specified with textRole 。 enabled bool indicates whether or not the item is enabled; when reimplementing this bool should influence how the item is drawn.
另请参阅 QStyle::drawItemText () 和 Qt::Alignment .
Use the widget's style to draw a primitive element pe 指定通过 QStyleOption option .
另请参阅 QStyle::drawPrimitive ().
Return the current style used by the QStylePainter .