目录
一、QPainter
QPainter类提供了许多高度优化的函数去做大部分的GUI绘制工作。它可以画从简单的线到复杂的形状。通常情况下,QPainter的使用是在widget当中的painter事件使用。记得在执行完之后要及时销毁QPainter的对象。
GUI利用QPainter绘图的时候,可以重定义函数paintEvent();窗口需要重新绘制或者升级的时候需要调用这个paintEvent();使用成员函数repaint或者update()后,也会调用paintEvent();
1、代码示例:
void MainWindow::paintEvent(QPaintEvent* event)
{
Q_UNUSED(event);
QPainter painter;
/*
* 一个painter被通过begin()函数被激活并且使用一个QPainterDevice参数的构造函数进行构造,
* 调用end()函数和析构函数解除激活。
*/
painter.begin(this);//开始画图
painter.setPen(Qt::blue);
painter.drawLine(100,100,200,300);//画线
painter.drawRect(0,20,30,60);//画矩形
painter.end();//解除激活
}
二、QPen
功能:顾名思义,就是画笔,用于绘图时对线条进行设置,包括线宽,颜色,线型等等。
三、 QBrush
用来指定颜色填充QPainter所绘制的图形,样式如下:
四、 QTransForm
QTransform transform;
transform.translate(50,50);//将坐标原点从(0,0)移到(50,50)
transform.rotate(45);//旋转45度
transform.scale(0.5,0.5);//缩小