Die Anfangsgröße eines Bitmaps festlegen

Aus RAD Studio
Wechseln zu: Navigation, Suche

Nach oben zu Bild-Steuerelemente hinzufügen

Wenn Sie ein Bild-Steuerelement einfügen, handelt es sich dabei nur um einen Container. Sie können aber zur Entwurfszeit die Eigenschaft Picture des Bild-Steuerelements mit einer statischen Grafik belegen. Das Steuerelement kann sein Bild zur Laufzeit auch aus einer Datei laden (siehe Grafikdateien laden und speichern).

Um beim Start der Anwendung ein leeres Bitmap zu erstellen, gehen Sie folgendermaßen vor:

  1. Verknüpfen Sie eine Behandlungsroutine mit dem Ereignis OnCreate des Formulars, das das Bild enthält.
  2. Erstellen Sie ein Bitmap-Objekt, und weisen Sie es der Eigenschaft Picture.Graphic des Bild-Steuerelements zu.

Im folgenden Beispiel befindet sich das Bild im Hauptformular (Form1) der Anwendung. Aus diesem Grund wird im Quelltext dem Ereignis OnCreate von Form1 eine Behandlungsroutine zugeordnet:



 
 procedure TForm1.FormCreate(Sender: TObject);
 var
 Bitmap: TBitmap; { Temporäre Variable für das Bitmap }
 begin
 Bitmap := TBitmap.Create; { Bitmap-Objekt erzeugen }
   Bitmap.Width := 200 { Anfangsbreite ... }
   Bitmap.Height := 200; { ...und Anfangshöhe zuweisen }
   Image.Picture.Graphic := Bitmap; { Das Bitmap dem Bild-Steuerelement zuweisen }
   Bitmap.Free; { Bitmap freigeben, da es nicht mehr benötigt wird }
 end;



 void __fastcall TForm1::FormCreate(TObject *Sender)
 {
   Graphics::TBitmap *Bitmap = new Graphics::TBitmap();   // Bitmap-Objekt erzeugen
   Bitmap->Width = 200;               // Anfangsbreite ...
   Bitmap->Height = 200;              // ...und Anfangshöhe zuweisen
   Image->Picture->Graphic = Bitmap;  // Das Bitmap dem Bild-Steuerelement zuweisen
   delete Bitmap;                     // Bitmap-Objekt freigeben
 }



Durch die Zuweisung des Bitmaps an die Eigenschaft Graphic des Bildes wird das Bitmap in das Bildobjekt kopiert. Da das Bildobjekt nicht zum Eigentümer des Bitmaps wird, muss es nach der Zuweisung freigegeben werden.

Wenn Sie jetzt die Anwendung starten, sehen Sie den Client-Bereich des Formulars als weiße Fläche, die das Bitmap darstellt. Wenn Sie die Größe des Fensters so ändern, dass der Client-Bereich nicht das gesamte Bild anzeigt, blendet die Bildlauffeld-Komponente automatisch Bildlaufleisten ein. Mithilfe dieser Leisten können Sie den Rest des Bildes anzeigen. Wenn Sie aber versuchen, in das Bild zu zeichnen, geschieht nichts, weil die Anwendung noch immer in dem Formular zeichnet, das sich jetzt hinter dem Bild und dem Bildlauffeld befindet.

Siehe auch