painter 是否处于激活状态:isActive()
激活painter:begin() 函数和painter 的构造函数(接受QPaintDevice 参数)
去除激活painter:end() 函数和析构函数
注意:如果paintdevice 是一个widget,则QPainter 只能在paintEvent() 函数中使用(或由paintEvent() 调用别的函数);只有一个例外,设置 Qt::WA_PaintOutsidePaintEvent 属性后不受此限制。
Settings
backgroundMode() 两种取值 Qt::OpaqueMode 不透明 或Qt::TransparentMode 透明。
background() 要使此项有效,仅当背景模式是不透明Qt::OpaqueMode 并且pen() 是一个stipple。
通过调用save() 函数,你可以随时保存QPainter 的状态(存在栈里),restore() 函数恢复先前状态(出栈)。
Drawing
drawRects() 和drawLines() 从QRects 或 QLines 数组中绘制指定数量的图形。
绘图函数drawPixmap() 和drawImage() 只是绘制速度有所差别,drawPixmap() 在屏幕上的绘制较快,而drawImage() 在打印机QPrinter 或其它设备上较快。
drawPicture() 绘制整个QPicture 的内容。drawPicture() 是唯一忽略所有painter 设置的函数,仅使用QPicture 本身的设置。