QPainter类低水平的绘制,例如在窗口部件上。
绘制工具为做到绝大部分绘制图形用户界面程序的需要提供了高度优化的函数。QPainter可以绘制从简单的直线到像饼图和弦这样的复杂形状。它也可以绘制排列的文本和像素映射。通常,它在一个“自然的”坐标系统中绘制,但是它也可以在视和世界转换中做到这些。
绘图工具的典型用法是:
构造一个绘图工具。
设置画笔、画刷等等。
绘制。
销毁这个绘图工具。
绝大多数情况下,所有这些是在一个绘制事件中完成的。(实际上,99%的QPainter使用是在QWidget::paintEvent()的重新实现中,并且绘制工具已经为这种用法高度优化了。)这里是一个非常简单的实例:
void SimpleExampleWidget::paintEvent()
{
QPainter paint( this );
paint.setPen( Qt::blue );
paint.drawText( rect(), AlignCenter, "The Text" );
}
警告:注意QPainter不会试图在底层窗口系统的左边限制周围工作。坐标在+/-4000时,一些平台的行为可能就不正确了。