![]() |
Hintergrund setzen bei FormCreate
Hallo,
ich habe eine BMP-Grafik die ich als Hintergrund für ein Formular verwenden möchte. Die Prozedur mit der ich dies auf das Form setze sieht folgendermaßen aus:
Delphi-Quellcode:
Wenn ich diese Prozedur aber nun innerhalb der Prodezur FormCreate aufrufe passiert nichts. Die Grafik wird nicht auf das Formular "gesetzt". Nur bei "OnMouseDown" oder ähnlichen Ereignissen wird der Hintergrund richtig gesetzt. Weiß jemand an was das liegt?
procedure TSpielForm.Hintergrund();
var img_bg:TBitmap; pos:TRect; begin img_bg:= TBitmap.Create; img_bg.LoadFromFile('background.bmp'); pos.Left := 0; pos.Top := 0; pos.Right := 298; pos.Bottom := 392; Canvas.StretchDraw(pos,img_bg); end; Danke. |
Re: Hintergrund setzen bei FormCreate
Funktioniert es vielleicht im OnPaint-Ereignis?
|
Re: Hintergrund setzen bei FormCreate
ja. super da funktioniert das. danke :-)
|
Re: Hintergrund setzen bei FormCreate
da wird es funktionieren, ... wie auch im OnShow / OnActivate ...
und vergiss nicht dein img_bg object nach dem StretchDraw wieder freizugeben |
Re: Hintergrund setzen bei FormCreate
Zitat:
Delphi-Quellcode:
1. Da reicht es doch wenn ich das erst am Ende wieder freigebe, oder?
img_stein:= TBitmap.Create;
img_stein.LoadFromFile('sp1.bmp'); for i := 1 to 100 do {nur eine dummy-schleife} begin spielFeld.Canvas.Rectangle(0,0,300,300); Rect.Left := 10; Rect.Right := 35; Rect.Top := 10+i ; Rect.Bottom := 35+i; spielFeld.Canvas.StretchDraw(Rect,img_stein); sleep(2); end; img_stein.free; 2. Gibt es auch noch eine andere Möglichkeit das fallen zu realisieren ohne ständig das aktuelle Bild mit einem Rechteck zu übermalen? |
Alle Zeitangaben in WEZ +1. Es ist jetzt 14:47 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz