Poszukuje najprostrzego sposobu do plynnego wyswietlania animacji zlozonej z JPGow. Dlatego opengl itp odpadaja :) Chodzi oto, abym przy uruchomieniu programu wczytal kilkanascie plikow graficznych do pamieci a potem kolejno je wyswietlal - powodujac plynna animacje. Czasami bede musial na jakis czas zastopowac (tzn pokazywac jedna klatke), a potem po jakims czasie znow ruszyc z animacja. TImage odpada bo miga, nawet przy DoubleBuffered:=true; Moze mi polecicie jakis komponent?
0
0
Rysuj bezpośrednio na formie, poprzez jej Canvas.
0
var
Form1: TForm1;
X : Integer;
JPG : array [1..9] of TJPEGImage;
implementation
{$R *.dfm}
procedure TForm1.Timer1Timer(Sender: TObject);
begin
Canvas.Draw(0,0, JPG[X]);
Inc(X);
if X = 10 then X := 1;
end;
procedure TForm1.FormCreate(Sender: TObject);
var
I : Integer;
begin
for I := 1 to 9 do
begin
JPG[I] := TJPEGImage.Create;
JPG[I].LoadFromFile('D:\Temp\test\test000' + IntToStr(I) + '.jpg');
end;
X := 1;
DoubleBuffered := True;
end;
procedure TForm1.FormDestroy(Sender: TObject);
var
I : Integer;
begin
for I := 1 to 9 do
JPG[I].Free;
end;
Przy niektórych rodzajach animacji może troche migać :/ .