Offscreen-Bitmaps erzeugen und verwalten
Nach oben zu Offscreen-Bitmaps
Bei der Erzeugung von komplexen grafischen Bildern sollte man es vermeiden, diese direkt auf dem Bildschirm darzustellen. Anstatt auf der Zeichenfläche für ein Formular oder Steuerelement zu zeichnen, können Sie ein Bitmap-Objekt im Speicher erstellen, auf dessen virtueller Zeichenfläche zeichnen und dann das vollständige Bild auf die Onscreen-Zeichenfläche kopieren.
Die häufigste Verwendung findet ein Offscreen-Bitmap in der Methode Paint eines Grafik-Steuerelements. Wie bei jedem temporären Objekt sollte das Bitmap mit einem try..finally-Block geschützt werden:
type
TFancyControl = class(TGraphicControl)
protected
procedure Paint; override; { override the Paint method }
end;
procedure TFancyControl.Paint;
var
Bitmap: TBitmap; { temporary variable for the off-screen bitmap }
begin
Bitmap := TBitmap.Create; { construct the bitmap object }
try
{ draw on the bitmap }
{ copy the result into the control's canvas }
finally
Bitmap.Free; { destroy the bitmap object }
end;
end;