#include <QTransform> void Widget::paintEvent(QPaintEvent *) { QPainter painter(this); painter.translate(100, 100); //座標向前平移 painter.drawLine(QPoint(0, 0), QPoint(100, 100)); painter.translate(-100, -100); painter.setPen(QPen(Qt::red)); painter.drawLine(QPoint(0, 0), QPoint(50, 50)); painter.drawLine(QPoint(50, 50), QPoint(100, 50)); painter.rotate(90); painter.setPen(QPen(Qt::green)); painter.drawLine(QPoint(50, -100), QPoint(100, -100)); //QTransform是對translate、rotate、scale等座標操做的封裝 QTransform transform; // transform.translate(20, 20); transform.rotate(-90); transform.scale(.5, .5); painter.setTransform(transform, true); //truebiao's表示疊加以前的座標 painter.drawLine(QPoint(50, 50), QPoint(60, 10)); }