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;