您的位置:首页 > 编程语言 > Delphi

Delphi中载入GIF动画

2014-01-12 17:07 621 查看


Delphi中载入GIF动画 http://www.cnblogs.com/wsoft/articles/2658089.html

Delphi 2009 gif动画方法

以前要在 Delphi 中显示 GIF 动画,一种办法是使用第三方组件,别一种方法就是使用 WebBrowser 组件。在 Delphi 2009 中,其内部已支持 GIF 了(可能在 Delphi 2005 和 Delphi 2006 中已支持了,未确认)。关于 GIF 的相关类是 TGIFImage,在 GIFImg 单元中,看下面的代码,窗体中的 GIF 就动起来了:

[Delphi] view
plaincopy

<pre style="margin-top:0px; margin-bottom:0px; white-space:pre-wrap; word-wrap:break-word"><span style="color:#008000"></span><span style="color:#008284"></span><span style="color:#0000FF"></span><span style="color:#000080"><strong>uses</strong></span> GIFImg;  

<span style="color:#008000"></span><span style="color:#008284"></span><span style="color:#0000FF"></span><span style="color:#000080"><strong>procedure</strong></span> TForm1.FormCreate(Sender: TObject);  

<span style="color:#008000"></span><span style="color:#008284"></span><span style="color:#0000FF"></span><span style="color:#000080"><strong>begin</strong></span>  

  <span style="color:#008000">// 先在窗体上放一个 TImage 组件:Image1;</span><span style="color:#008284"></span><span style="color:#0000FF"></span><span style="color:#000080"><strong></strong></span>  

  Image1.Picture.LoadFromFile(<span style="color:#008000"></span><span style="color:#008284"></span><span style="color:#0000FF">'C:\Example.gif'</span><span style="color:#000080"><strong></strong></span>);  

  <span style="color:#008000">// AnimationSpeed 设定动画速度,值越大,速度越快;</span><span style="color:#008284"></span><span style="color:#0000FF"></span><span style="color:#000080"><strong></strong></span>  

  TGIFImage(Image1.Picture.Graphic).AnimationSpeed := <span style="color:#008000"></span><span style="color:#008284"></span><span style="color:#0000FF">500</span><span style="color:#000080"><strong></strong></span>;  

  TGIFImage(Image1.Picture.Graphic).Animate := True;  

<span style="color:#008000"></span><span style="color:#008284"></span><span style="color:#0000FF"></span><span style="color:#000080"><strong>end</strong></span>;</pre>  

首先,先下载TgifImage.pas单元。步骤:[project]-->[add to project...] 选择TgifImage.pas单元然后编译即可。

在使用TImage加载显示gif时通常是安装 TGifimage来扩展实现,在使用中也会有动态创建控件的情况,但如果直接加载gif图片话,gif动画并不会动,这就要先创建TGifImage类来加载动画,最后再交给Timage。代码如下:
procedure TForm1.Button1Click(Sender: TObject);
var
  objImg: TImage;
  objGif: TGIFImage;
begin
  if OpenDialog1.Execute then
  begin
    objImg := TImage.Create(Self);
    objImg.Parent := Self;
    objImg.SetBounds(10, 20, 140, 200);

    objGif := TGIFImage.Create;
    objGif.LoadFromFile(OpenDialog1.FileName);
    objImg.Picture.Assign(objGif);

    TGIFImage(objImg.Picture.Graphic).Animate := True;
  end;
end;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  delphi