Offscreen-Bitmaps erzeugen und verwalten

Aus RAD Studio
Wechseln zu: Navigation, Suche

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;