删繁就简单:实际上就是重写PaintEvent函数.
举例:
void Widget::paintEvent(QPaintEvent *e)
{
QPainter TemPaint(this);
/*
TemPaint.setPen(QColor(0, 160, 230));
TemPaint.drawText(rect(), Qt::AlignCenter,"Hello World");
*/
/*
QPixmap A("aaa.png");
TemPaint.drawPixmap(A.rect(),A);
*/
TemPaint.drawPixmap(rect(), QPixmap("aaa.png"));
}
实现效果:
translate()函数,进行平移变换;scale()函数,进行比例变换;rotate()函数,进行旋转变换;shear()函数,进行扭曲变换。
最后介绍两个有用的函数save()和restore(),利用它们来保存和弹出坐标系的状态,从而实现快速利用几个变换来绘图。