您的位置:首页 > 其它

VC中加载GIF格式动态图片的详细方法!

2011-01-11 16:26 351 查看
最近老总说要把视图里的图标改成动态的,让其能够更形象的显示状态,所以我就百度了一下,还真没很详细的资料,但最终我还是东凑凑,西凑凑给凑出来了,下面说一下详细步骤吧:

1。下载 PictureEx.h和PictureEx.cpp两个文件

把这两个文件放在工程的文件夹里面,然后在将这两个文件添加到工程里面去,这样你的工程里就多了一个类了:CPictureEx

2.将你要加载的GIF图片添加到项目文件夹里,这里我命名为:"inter.gif"

3。在试图类的头文件里添加: #include "PictureEx.h"

定义一个对象: CPictureEx m_GifPic;

4.在视图类的OnCreate中创建 CPictureEx 对象并加载图片:

m_GifPic.Create(NULL,WS_CHILD | WS_VISIBLE |SS_ENHMETAFILE,CRect(50,50,100,100),this,1234);
m_GifPic.Load(_T("inter.gif"));

m_GifPic.ShowWindow(SW_HIDE);//SW_SHOW

注意:这一步骤不要在OnDraw里面实现,否则会出现错误,我一开始时一直有问题就是这个原因,还有load必须在movewindow(下一步的函数)之前,否则不会显示图片,还有就是load也可以放到ondraw里面去,但是那么做的话速度明显不行了。

5。在ondraw里改变窗口位置并显示图片

CRect rc =CRect(100,400,150,450);

m_GifPic.MoveWindow(&rc,true);

m_GifPic.Draw();

m_GifPic.ShowWindow(SW_SHOW);

:一开始一直不知道怎么改变窗口位置,后来在CSDN上发帖求助,才知道时MOVEWINDOW函数,看来经验还是不足啊,我应该自己想到的。

就这样,就可以显示动态的GIF图片了。

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/adriano119/archive/2009/01/15/3786378.aspx
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: