要绘制动态2D图表或曲线,首先想到的使用第三方开源库QWT,QCustomPlot 等,但这并不影响我们自己去绘制。就像我们能熟练使用Qt模块进行开发了,也很有必要去了解一下Qt的底层实现原理,比如Qt元对象系统、事件循环、父子对象关系等等。
一.效果

二.原理
所谓双缓冲(double-buffers)绘图,就是在进行绘制时,先将所有内容都绘制到一个绘图设备(如 QPixmap)上,然后再将整个图像绘制到部件上显示出来。使用双缓冲绘图可以避免显示时的闪烁现象。
从Qt 4.0开始,QWidget部件的所有绘制都自动使