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; { Methode Paint überschreiben }
end;
procedure TFancyControl.Paint;
var
Bitmap: TBitmap; { Temporäre Variable für das Offscreen-Bitmap }
begin
Bitmap := TBitmap.Create; { Bitmap-Objekt erzeugen }
try
{ in Bitmap zeichnen }
{ Ergebnis in Zeichenfläche des Steuerelements kopieren }
finally
Bitmap.Free; { Bitmap-Objekt freigeben }
end;
end;