Du kannst es machen wie du willst, aber es kostet nun mal Rechenzeit bei jeder Bewegung erst die Größe zu ändern.
Wobei ein kleiner Tipp, damit du nicht mit zig Bitmaps jonglieren mußt:
Delphi-Quellcode:
var
_bmp_klein: TBitmap;
_bmp_normal: TBitmap;
_bmp_gross: TBitmap;
procedure TForm1.FormCreate(Sender: TObject);
begin
_bmp_klein := TBitmap.Create;
_bmp_normal:= TBitmap.Create;
_bmp_gross := TBitmap.Create;
//freigeben nicht vergessen
_bmp_klein ...zuweisen...
_bmp_normal ...zuweisen...
_bmp_gross ...zuweisen...
end;
procedure TForm1.Button1Click(Sender: TObject);
var
bmp_zum_arbeiten: TBitmap;
begin
bmp_zum_arbeiten := _bmp_klein;
bmp_zum_arbeiten ...mach was...
bmp_zum_arbeiten := _bmp_normal;
bmp_zum_arbeiten ...mach was...
end;
Das klappt. Du mußt die Bitmap nicht umkopieren, du kopiert einfach deren Adresse und arbeitest immer mit der gleichen Bitmap. Nur bei Größenänderung kopierst du die Adresse einer anderen Bitmap.