Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Auf Button zeichnen (https://www.delphipraxis.net/52510-auf-button-zeichnen.html)

TheSaint 30. Aug 2005 07:25


Auf Button zeichnen
 
Hallo.
Ich habe eine Klasse von TButton abgeleitet um meine eigene Buttonkomponente zu erstellen. Nun lausche ich auf die WM_PAINT Messages um herauszufinden wann der Button gezeichnet wird, weil ich zusätzlich noch ein Bitmap auf den Button zeichnen möchte. Das klappt soweit auch ganz gut, mein Problem ist nun, dass beim Down und auch beim Up das paint Ereignis nicht aufgerufen wird. Der Button wird also ohne Bitmap gezeichnet.
Jetzt dachte ich mir, fange ich auch noch das Down und Up ab und zeichne dann neu, aber dann flimmert das ganze.
Wie bekomme ich mein Bitmap flimmerfrei und in jedem Buttonstatus gezeichnet?

Danke
TheSaint

shmia 30. Aug 2005 08:22

Re: Auf Button zeichnen
 
Zitat:

Zitat von TheSaint
Jetzt dachte ich mir, fange ich auch noch das Down und Up ab und zeichne dann neu, aber dann flimmert das ganze.

Du solltest nicht sofort neu zeichnen, sondern die Methode Invalidate aufrufen.
Wird Invalidate mehrmals aufgerufen, wird trotzdem nur einmal gezeichnet; dass verhindert das Flimmern.

TheSaint 30. Aug 2005 10:06

Re: Auf Button zeichnen
 
Danke!
Jedoch hatte ich schon invalidate aufgerufen. Mein Fehler war, dass ich nur Up und Down abgefangen hatte. Den Doubleclick hatte ich vergessen und da war der Fehler. :wall:

Manchmal sieht man den Wald vor lauter Bäumen nicht. :roll:

MfG
TheSaint


Alle Zeitangaben in WEZ +1. Es ist jetzt 05:52 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz