Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1334725
  • 博文数量: 177
  • 博客积分: 3640
  • 博客等级: 中校
  • 技术积分: 1778
  • 用 户 组: 普通用户
  • 注册时间: 2011-04-27 16:51
文章分类

全部博文(177)

文章存档

2014年(1)

2013年(10)

2012年(3)

2011年(163)

分类: LINUX

2011-05-14 19:23:33

gif图片可以分为静态图片和动态图片,但无论是那种图片都可以通过以下两种方式显示(前提是./configure时有指定-gif):

1利用QMovie+QLabel,代码如下:


movie = new QMovie("./images/bkg.gif");//这个资源不用写到source.qrc中,只要路径对了就行,还有就是movie最好是new的

不然如果是写到一个方法里面的话movie可以被销毁从而导致gif无法显示

label->setMovie(movie);

qDebug()<<"..rrrr.."<isValid();//测试是否加在成功

movie->start();

2.利用drawPixmap 画。(动态的图片只能显示第一桢,而且因该重写paintEvent)代码如下:


void CourseInfoPage::paintEvent(QPaintEvent* event)

{

QPixmap pic(":/images/bkg.gif");//这个要到资源文件source.qrc里面,其他的没有试过能成功不

QPainter painter(this);

painter.drawPixmap(m_ui->frame_picture->x(),m_ui->frame_picture->y(),m_ui->frame_picture->width(),m_ui->frame_picture->height(),pic);

阅读(12118) | 评论(1) | 转发(0) |
给主人留下些什么吧!~~

aliyun2012-02-13 18:53:49

http://t.cn/zOAi8i2