-
经过多线程测试的适用于Delphi7的GifImage程序改写版
资源介绍
原GifImage在多线程运行时,经常产生异常。因此特别做了特殊的判断和处理。
在调用时,需要特别注意。
var
gif: TGifImage;
image: TImage;
aFileName: String; // 图片文件名称
begin
....
gif := TGIFImage.Create;
try
gif.LoadFromFile(aFileName);
image.Picture.Assign(gif.Bitmap);
gif.AnimationSpeed := 200;
gif.Animate := true; // 设置为动画,这样才能有动画效果
// 需要加上这个,否则,会出现Out of System Resource
if image.Picture.Graphic.Palette <> 0 then
begin
deleteObject(image.Picture.Graphic.Palette);
image.Picture.Graphic.Palette := 0;
end;
// 注意:这个是关键(没有用Assign),新产生的对象拷贝了原来的Gif信息
image.Picture.Graphic := gif;
finally
if Assigned(gif) then FreeAndNil(gif); // 注意:释放了gif的对象资源
end;
- 上一篇: VB,VC ,Delphi等开发的绿色软件常用运行库.rar
- 下一篇: 黑客帝国 矩阵3D屏保