首先呢,我是把图片画在widget上面的,代码自然也要写在paintevent里面。
注意,添加图片时候要记得执行qmake一下,不然图片不能正常执行哦。
1.首先是图片的显示:
void Widget::paintEvent(QPaintEvent *even)
{
QPixmap pix(":/new/prefix1/201409091359143092.jpg");
QPainter painter(this);
painter.drawPixmap(0,0,pix);
}

2.图片的平移
void Widget::paintEvent(QPaintEvent *even)
{
QPixmap pix(":/new/prefix1/201409091359143092.jpg");
QPainter painter(this);
painter.drawPixmap(0,0,pix);
painter.translate(100,100);//其实这里是把原点给更改了,偏移了100 painter.drawPixmap(0,0,pix);//所以这里的代码没变
}

3.图片的扭曲
void Widget::paintEvent(QPaintEvent *even)
{
QPixmap pix(":/new/prefix1/201409091359143092.jpg");
QPainter painter(this);
painter.drawPixmap(0,0,pix);
painter.shear(0.8,0.8);//剪羊毛啦,哈哈,shear貌似就是这么翻译的 painter.drawPixmap(0,0,pix);
}

扭曲得我自己都看不下去了。
4.图片的旋转
void Widget::paintEvent(QPaintEvent *even)
{
QPixmap pix(":/new/prefix1/201409091359143092.jpg");
QPainter painter(this); painter.drawPixmap(0,0,pix);
//painter.translate(100,100); painter.rotate(45);
painter.drawPixmap(0,0,pix);
}

你一定 发现图片旋转的时候是绕着左上角的点旋转的。所以,如果你想指定其它的旋转中心,就要用到注释掉的哪行代码,对画笔进行偏移。
5.图片的缩放
void Widget::paintEvent(QPaintEvent *even)
{
QPixmap pix(":/new/prefix1/201409091359143092.jpg");
QPainter painter(this);
painter.drawPixmap(0,0,pix);
QPixmap pix2=pix.scaled(QSize(50,50));
painter.drawPixmap(0,0,pix2);
}

结束!
因为缩放这个函数返回的是一个pixmap类型,所以我们要实例化一个新的。
这里的缩放函数有很多参数,为了省事,所以只写了一个,好吧,我太懒了。
注意,添加图片时候要记得执行qmake一下,不然图片不能正常执行哦。
1.首先是图片的显示:
void Widget::paintEvent(QPaintEvent *even)
{
QPixmap pix(":/new/prefix1/201409091359143092.jpg");
QPainter painter(this);
painter.drawPixmap(0,0,pix);
}

2.图片的平移
void Widget::paintEvent(QPaintEvent *even)
{
QPixmap pix(":/new/prefix1/201409091359143092.jpg");
QPainter painter(this);
painter.drawPixmap(0,0,pix);
painter.translate(100,100);//其实这里是把原点给更改了,偏移了100 painter.drawPixmap(0,0,pix);//所以这里的代码没变
}

3.图片的扭曲
void Widget::paintEvent(QPaintEvent *even)
{
QPixmap pix(":/new/prefix1/201409091359143092.jpg");
QPainter painter(this);
painter.drawPixmap(0,0,pix);
painter.shear(0.8,0.8);//剪羊毛啦,哈哈,shear貌似就是这么翻译的 painter.drawPixmap(0,0,pix);
}

扭曲得我自己都看不下去了。
4.图片的旋转
void Widget::paintEvent(QPaintEvent *even)
{
QPixmap pix(":/new/prefix1/201409091359143092.jpg");
QPainter painter(this); painter.drawPixmap(0,0,pix);
//painter.translate(100,100); painter.rotate(45);
painter.drawPixmap(0,0,pix);
}

你一定 发现图片旋转的时候是绕着左上角的点旋转的。所以,如果你想指定其它的旋转中心,就要用到注释掉的哪行代码,对画笔进行偏移。
5.图片的缩放
void Widget::paintEvent(QPaintEvent *even)
{
QPixmap pix(":/new/prefix1/201409091359143092.jpg");
QPainter painter(this);
painter.drawPixmap(0,0,pix);
QPixmap pix2=pix.scaled(QSize(50,50));
painter.drawPixmap(0,0,pix2);
}

结束!
因为缩放这个函数返回的是一个pixmap类型,所以我们要实例化一个新的。
这里的缩放函数有很多参数,为了省事,所以只写了一个,好吧,我太懒了。
