Qt | 关于画图类的使用 QPainter
前言:
QPaintDevice、QPaintEngine 和 QPainter 是 Qt 绘制系统的 3 个核心类,QPainter 类用来实现绘制的实际操作;QPaintDevice 类是能够在其中进行绘制的类,也就是说,QPainter 类可以在任何 QPaintDevice 的子类上进行绘制。QPaintEngine 继承自 QPaintDevice。
画直线:
用于画直线的函数是 drawLine();它的常用的几种形式有:
void drawLine(int x1, int y1, int x2, int y2); x1 和 y1 表示起始点的横坐标和纵坐标;x2 和 y2 表示终点的横坐标和纵坐标。
void drawLine(const QPoint &p1, const QPoint &p2); p1 表示起始点的坐标点,p2 表示终点的坐标点。
画矩形:
用于画矩形的函数是 drawRect();它的常用的几种形式有:
void drawRect(int x, int y, int width, int height); x 和 y 是矩形的左上角的横坐标和纵坐标的值,width 是矩形的宽度,height 是矩形的高度。
void drawRect(const QRect &rectangle); rectangle 是矩形的矩形坐标对象。
画椭圆和圆:
圆其实是椭圆的一种特殊形式,用于画椭圆的函数是 drawEllipse();它的常用的几种形式有:
void QPainter::drawEllipse(const QRect &rectangle); rectangle 是要画椭圆的矩形边界对应的坐标。
void QPainter::drawEllipse(int x, int y, int width, int height); x 和 y 是要画椭圆的圆点(中心点)的横坐标和纵坐标值,width 是椭圆长轴的值,height 是椭圆短轴的值。其实就是圆心点,水平方向半径,垂直方向半径。当 width 等于 height 时,画出的就是圆。
绘制文本:
用于绘制文本的函数是 drawText();它的常用的几种形式有:
drawText(const QPoint &position, const QString &text); position 是要画文本字符串的左上角的顶点坐标,text 是要绘制的文本字符串。
drawText(int x, int y, const QString &text); x 和 y 是要绘制文本字符串的左上角顶点的横坐标值和纵坐标值,text 是要绘制的文本字符串。
版权声明: 本文为 InfoQ 作者【YOLO.】的原创文章。
原文链接:【http://xie.infoq.cn/article/21c32d642cf32082259cd49ff】。未经作者许可,禁止转载。
评论