The renderings are as follows: the
code is as follows:
void MainWindow::paintEvent(QPaintEvent *)
{
QPainter painter(this);
painter.setRenderHint(QPainter::Antialiasing); // 设置反锯齿
// 设置字体:微软雅黑\点大小13\斜体
QFont font;
font.setFamily("Microsoft YaHei");
font.setPointSize(13);
font.setItalic(true);
painter.setFont(font);
// 绘制文本
painter.drawText(QPointF(40,40),"绘制的文本");
painter.setPen(QColor(0,160,230)); // 设置画笔
// 绘制直线
painter.drawLine(QPointF(240,40),QPointF(340,40));
painter.setPen(QPen(QColor(0,160,230),2)); // 设置画笔
painter.setBrush(QColor(255,160,90)); // 设置画刷
// 绘制矩形
painter.drawRect(440,40,100,40); // 起始点宽高
QRect rect(40.0,180.0,80.0,80.0);
int startAngle=30*16;
int spanAngle=140*16; // 跨越角度,度数为原来的1/16
// 绘制弧线
painter.drawArc(rect,startAngle,spanAngle);
// 绘制椭圆
painter.drawEllipse(QPointF(280,190),50,30);
// 绘制圆
painter.drawEllipse(QPointF(480,190),50,50); // 起始点,宽、高
QPointF points[3]={
QPointF(40,310),QPointF(100,310),QPointF(50,400)};
// 绘制多边形
painter.drawPolygon(points,3); // 点数据,点数量
QRect pixRect(240,310,100,100); // 绘图区域
QPixmap pix(":/pixmap.jpg");
// 绘制图片
painter.drawPixmap(pixRect,pix);
}