Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Multimedia (https://www.delphipraxis.net/16-multimedia/)
-   -   Delphi TPaintBox resizen (https://www.delphipraxis.net/152940-tpaintbox-resizen.html)

ThE_-_BliZZarD 13. Jul 2010 22:31

TPaintBox resizen
 
Hallo liebe Gemeinde,

ich habe folgendes Problem:

Auf meinem Form liegt eine TPaintBox (heißt DisplayImage), die ich resizen möchte und zwar während das Form resized wird.

Ich habe also im Form (FMain) eine OnResize-Methode eingetragen, diese wird auch aufgerufen, darin machen ich folgendes:
Delphi-Quellcode:
procedure TFMain.FormResize(Sender: TObject);
begin
   DisplayImage.Width := FMain.ClientWidth;
   DisplayImage.Height := FMain.ClientHeight;
   
   DisplayImage.Canvas.Brush.Color := clGreen;
   DisplayImage.Canvas.Brush.Style := bsSolid;
   DisplayImage.Canvas.Rectangle(0, 0, DisplayImage.Width, DisplayImage.Height);
end;
Meiner Meinung nach sollte nur das Formular immer grün erscheinen und auch während/nach einem Resize grün sein.
Dies ist nicht der Fall, es blitzt manchmal grün auf aber dann ist alles wieder grau (die Standard-bg-color von Delphi-Forms).

Was mache ich falsch, was muss ich noch hinzufügen?
Vielen Dank schon mal für eure Mühe :)

jfheins 13. Jul 2010 23:07

AW: TPaintBox resizen
 
1. Kennsst sud die Anchors? Nein? Guck sie dir mal an ;)
Zitat:

Zitat von ThE_-_BliZZarD (Beitrag 1035179)
Was mache ich falsch, was muss ich noch hinzufügen?

2. Du zeichnest die Paintbox nicht im OnPaint. Lösung: Bemale die Paintbos im OnPaint Ereignis. Das wird dann automatisch aufgerufen wenn neugezeichnet werden soll.

Blup 14. Jul 2010 08:18

AW: TPaintBox resizen
 
Delphi-Quellcode:
DisplayImage.Align := alClient;
Sollte in diesem Fall sogar noch besser funktionieren.

Allerdings stellt sich die Frage, warum in diesem Fall überhaupt noch eine Paintbox?
Das Formular hat einen Canvas und ein OnPaint-Ereignis.
Zusätzlich kann man sogar die Hintergrundfarbe einstellen.


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:40 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