Tak ohladom tych obrazkov by to nemalo byt problem
Mozes si vybrat ci chces neustale nacitavat obrazok a potom vykreslovat do canvasu ,alebo vsetky obrazk budu uz vopred nacitavane napriklad v poli a jednoducho uz to potom len hodis na canvas.
Priklad (len zhruba ako to ma vyzerat)
Kód: Vybrať všetko
PoleObrazkov : array of TBitmap
---------------------------------
setlength(PoleObrazkov, X);
for i:=0 to high(PoleObrazkov) do
begin
PoleObrazkov[i] := TBitmap.Create;
PoleObrazkov[i].loadfromfile('cesta/k/obrazku');
end;
//vykreslovanie
case podmienka of //alebo iny typ podmienky
1: Obr.Canvas.Draw(X, Y, PoleObrazkov[1]);
2: Obr.Canvas.Draw(X, Y, PoleObrazkov[2]);
.
.
.
end;
Ak furt chces nacitavat pri splneni podmienky a nechces mat v pamati:
Kód: Vybrať všetko
Obrazok : TBitmap;
---------------------
Obrazok := TBitmap.Create;
if (podmienka1) then
Obrazok.LoadFromFile('cesta/k/obrazku')
else if (podmienka2) then
Obrazok.LoadFromFile('cesta/k/obrazku')
else
Obrazok.LoadFromFile('cesta/k/obrazku');
Obr.Canvas.Draw(X,Y, Obrazok);
FreeAndNil(Obrazok);