// Ein
animiertes Gif wird immer in Dauerschleife angezeigt.
// Getestet mit RS 10.4 unter Win11
uses Vcl.Imaging.GIFImg;
var
AnimGif: TGifimage;
LoopExt: TGIFAppExtNSLoop;
procedure TForm1.FormCreate(Sender: TObject);
begin
Image1.autosize := True;
AnimGif := TGifimage.Create;
end;
procedure TForm1.FormDestroy(Sender: TObject);
begin
FreeAndNil(AnimGif);
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
AnimGif.LoadFromFile('D:\Bilder\Vogel.gif');
Image1.transparent := AnimGif.isTransparent;
if AnimGif.images.Count < 2 then
begin
showmessage('Keine Animation');
exit;
end;
AnimGif.Animate := True;
LoopExt := TGIFAppExtNSLoop.Create(AnimGif.Images[0]);
LoopExt.Loops := 0; // Dauerschleife
Image1.Picture.Graphic := AnimGif;
FreeAndNil(LoopExt);
end;
|