我是靠谱客的博主 俏皮雪碧,这篇文章主要介绍Qt之QPainter:提高绘制效率的方法,现在分享给大家,希望可以做个参考。

2019独角兽企业重金招聘Python工程师标准>>> hot3.png

如果我们用painter一个一个的绘制直线,圆等在控件上,绘制效率会不高。为了提高效率,我们可以设置一个画布pixmap,将所有的基础图形画布上,然后把画布画在控件上。

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <QPixmap> void Widget::paintEvent(QPaintEvent *) { QPixmap pixmap(size()); //将画布的大小设置为和widget一样的 QPainter painter(&pixmap); //在画布上常见一个画家 painter.setBrush(Qt::yellow); painter.setPen(QPen(Qt::red, 2, Qt::DashLine)); painter.drawEllipse(QPoint(95, 333), 50, 50); painter.drawText(QPoint(50, 50), "Hello world"); painter.end(); //画完了 painter.begin(this); //在Widget上开始绘制 painter.drawPixmap(0, 0, pixmap); //在控件上绘制pixmap图像 painter.drawLine(QPoint(50, 50), QPoint(60, 10)); }

a716c956f56d3402633515d522becac1183.jpg

转载于:https://my.oschina.net/u/3919756/blog/1944747

最后

以上就是俏皮雪碧最近收集整理的关于Qt之QPainter:提高绘制效率的方法的全部内容,更多相关Qt之QPainter:提高绘制效率内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(73)

评论列表共有 0 条评论

立即
投稿
返回
顶部