vc6.0加载gif动画问题?

afafaf_2008 2009-03-25 02:48:43
vc6.0开发的一个绘图程序,除了要求自绘各种图形外,还要能加载各种格式的图片。LoadImage肯定是不行的,后来使用IPicture从流中加载,可gif类型的图只能显示第一个画面。又在网上找了段分解gif的代码,代码中为了显示动画开了个线程,显示一张画面后等待一段时间再显示第二张,仔细想想也不行,我如果有很多动画要加载那不是要开很多线程,再说还涉及倒很多对图片的操作。后来找到CxImage,想用这个库实现,可不知道怎么用,里面有一些图片格式类型的文件夹,没看到gif的,哪位告诉我怎么用?或者有更好的方法的话指导我一下,万分感谢!
...全文
265 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhao1zhong6 2009-03-25
  • 打赏
  • 举报
回复
4楼的朋友能不能讲一下Image与CImage有什么不同.
afafaf_2008 2009-03-25
  • 打赏
  • 举报
回复
GDI+加载只显示第一张图
  • 打赏
  • 举报
回复
用过PictureEx 的类 也可以。。。。网上有下。。
oyljerry 2009-03-25
  • 打赏
  • 举报
回复
查找对应的几个函数在什么lib中实现的就可以了
afafaf_2008 2009-03-25
  • 打赏
  • 举报
回复
麻烦告诉我如果只需要显示GIF的话只要哪些编译出来的.lib就可以了
wltg2001 2009-03-25
  • 打赏
  • 举报
回复
用ActiveX控件可以加载,VC6应该带有相关控件
hxzmm 2009-03-25
  • 打赏
  • 举报
回复
用GDI+加载图片
Image image(L".jpg");
Graphics gr(hDC);
gr.DrawImage(&image, 0, 0, image.GetWidth(), image.GetHeight());
oyljerry 2009-03-25
  • 打赏
  • 举报
回复
使用 CxImage 显示 gif 动画

pImage = new CxImage("g:\\test.gif", CXIMAGE_FORMAT_GIF);
pImage->SetRetreiveAllFrames(true);
pImage->SetFrame(pImage->GetNumFrames()-1);
pImage->Load("g:\\test.gif",CXIMAGE_FORMAT_GIF);


在OnTimer的处理中
long m = pImage->GetNumFrames();
long n = pImage->GetFrame()+1;
if (n>=m) n=0;
if (pImage->GetFrame(n))
{
pImage->Copy(*pImage->GetFrame(n));
Invalidate(FALSE);
}
pImage->SetFrame(n);
afafaf_2008 2009-03-25
  • 打赏
  • 举报
回复
必须是可以直接加载外部图片文件,而不是从资源中加载。
jieleiping 2009-03-25
  • 打赏
  • 举报
回复
http://www.enet.com.cn/article/2005/0616/A20050616424664.shtml

19,464

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 图形处理/算法
社区管理员
  • 图形处理/算法社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧