Qt 听到这个名字 可能有点陌生 其实它就和Windows下的MFC比较像 而且封装的不比MFC差
QPainter绘制工具类 在VC中相当于 CPaintDC CClientDC 都是向图像显示设备上进行绘制的工具类
QPainter 是一个绘制工具类 那么使用QPainter如果想画出一些特殊的效果 那么就需要调整 QPainter中的画笔,画刷。
如果想画红色的线 那么必须要先创建出一个红色的QPen也就是画笔对象 然后将其设置到QPainter中使用 这样再使用QPainter
对象调用drawLine时画出的线才会是红色的
QPainter g(this);
在QPainter中唯一和VC中相像的是画线的操作首先使用MoveTo来确定起始点
然后使用LineTo进行线段的绘制 下面看一下QPainter中的绘制操作:
g.drawLine(0,0,1024,768); 画线
g.drawArc(0,100,200,200,45*16,100*16); 画圆
g.drawChord(200,100,200,200,45*16,100*16); 画弦弧
g.drawPie(400,100,200,200,30*16,300*16); 画扇形 (大嘴鱼)
QPoint p[3];
p[0].setX(100);
p[0].setY(100);
p[1].setX(500);
p[1].setY(100);
p[2].setX(300);
p[2].setY(400);
g.drawConvexPolygon(p,3); 通过指定的点数 画出凸多边形
g.drawEllipse(100,100,600,300); 画椭圆
g.drawLines(p,3); 通过指定的点数 画出线段 点数要是偶数因为两点一线
g.drawText(100,100,200,200,0,"Hello"); 画文字到屏幕
QImage img("1.png"); 创建加载图像的QImage对象
g.drawImage(10,10,img,400,400,200,200); 将QImage对象数据写到屏幕