Qt的二维图形引擎是基于QPainter类的。QPainter既可以绘制几何形状(点、线、矩形、椭圆、弧形、弦形、饼状图多边形和贝塞尔曲线),也可以绘制像素映射图像和文字。
功能还是十分强大的,下面直接放我写的代码:
QPainter painter(this);
QPen pen;
// 画一条直线
//pen.setStyle(Qt::DashLine);//设置为虚线
pen.setColor(Qt::red);//设置画笔为红色
pen.setWidth(12);//设置画笔宽度
painter.setPen(pen);//设置画笔
painter.drawLine(rect().topLeft(), rect().bottomRight());
painter.drawLine(10,50,50,200);
// 画多个点(5个)
pen.setColor(Qt::gray);//设置画笔为红色
pen.setWidth(6);//设置画笔宽度
painter.setPen(pen);//设置画笔
QPointF pointf[5];
for (int i=0; i<5; ++i)
{
pointf[i].setX(20.0+i*50.0);
pointf[i].setY(400.0);
}
painter.drawPoints(pointf, 5);
// 画一个空心正方形
pen.setColor(Qt::darkRed);
pen.setWidth(5)