▲▲▲有关GIF的问题▲▲▲▲ (50分)

  • 主题发起人 主题发起人 qxj
  • 开始时间 开始时间
Q

qxj

Unregistered / Unconfirmed
GUEST, unregistred user!
我用IMAGE来显示GIF动画(通过GIFIMAGE),我在某时刻想终止这个动画,显示另外一个GIF动画,
Imagegif.Picture :=nil;
但他仍然存在,只不过不动了,在我重新刷新窗体也没有用,
当我切换到另外一个全屏的程序,再切换回来时,就不出现这个GIF了,
请问这是什么原因???/
有没有好的解决方法???
 
visible := false
 
把visible设为false不就看不见了
 
Imagegif.Picture :=nil;//这句话已经把它清掉了
所以要在load一次
imagegif.loadfromfile('XXX.gif')
 
不好意思,我的意思是,让他在某个时刻显示另外一个GIF动画,
 
那就load另外一个文件
 
新的GIF是能显示,.
但原来的GIF也存在,不过是不动的,
 
重画一下?imagegif.repaint
 
问题依然存在,老兄有没有QQ或MSN,上那
 
笨办法:
放两个GIF控件,分别显示不同的GIF动画,一个设为可见、可动,另一个不可见、不可动,要显示另一个时,只需分别改变其属性就可以了,当然两个动画可以重迭放在一起。

嘿嘿。[:D]
 
LEEMA:这是不行的,这样只能在两个固定的GIF中来回切换,
 
我的msn: fangyuan1st@hotmail.com
我现在没有空,抱歉。
 
可能是GIFIMAGE的BUG,有源码的话,自己看看了。
 
//GIF动画的加载
try
gif :=TGIFImage.Create;
try
gif.LoadFromFile('F:/delphi/gif/china.gif');
GIF.OptimizeColorMap;
Imagegif.Picture.Assign(GIF);
finally
gif.Free;
end;
finally

end;

*******************************
换另外一个GIF的程序
Imagegif.Picture :=nil;
Imagegif.Update;
FrmGif.Update;
try
gif :=TGIFImage.Create;
try
gif.LoadFromFile('F:/delphi/gif/china1.gif');
GIF.OptimizeColorMap;
Imagegif.Picture.Assign(GIF);
finally
gif.Free;
end;
finally

end;

 
呵呵,发现原来是透明窗体的问题,当我在透明窗体上放一个IMAGE,他的Transparent为TRUE,刚我把IMAGE的动画作改变时他并没有刷新,给他发消息刷新也没有用,
当我把程序和其它程序进行切换,或最大化,最小化进行切换他就能刷新,这是为什么
 
后退
顶部