使用QT的QPainter绘图和实时刷新
Qt是个很不错的GUI,本文章记录了使用QPainter类绘制图形的步骤,供参考。
要在绘图设备(paint device,一般是一个控件)上开始绘制,首先需要创建一个QPainter,把绘图设备指针传给QPainter对象。例如:
void MyWidget::paintEvent(QPaintEvent *event)
{
QPainter painter(this);
...
}
使用QPainter的draw…()函数我们可以绘制各种图形。绘制的方式由QPainter的设置决定。设置的一部分是从绘图设备得到的,其他是初始化时的默认值。三个主要的设置为:画笔,刷子和字体。
- 画笔用来绘制直线和图形的边框。包含颜色,宽度,线型,角设置和连接设置。
- 刷子是填充几何图形的方式。包含颜色,方式设置,也可以是一个位图或者渐变色。
- 字体用来绘制文本。字体的属性很多,如字体名,字号等。
以下是属性的效果展示:
1 |
2 |
3 |
4 |
5 |
QWidget |
由于继承了QWidget类,所以可以在timer的slot中调用update()等方法实现刷新。