Einzelnen Beitrag anzeigen

Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.453 Beiträge
 
Delphi 12 Athens
 
#2

AW: Abgeleiteter TButton mit Delphi Styles nicht richtig

  Alt 19. Jun 2022, 15:37
Muss ich da wirklich den ButtonStyleHook kopieren und für mich anpassen und wie kriege ich diesen dann in meine Komponente? Oder gibt es da eine einfachere objektbasierende Methode ohne Code zu kopieren?
Das war aber doch zu erwarten. Der Style übernimmt ja das Zeichnen anstatt der Windows-Standard-Methode. Insofern ist auch zu vermuten, dass er die erweiterten BS_xxx Werte nicht kennt bzw. nicht auswertet.

Im konkreten Fall läuft es darauf hinaus eine neue Klasse von TButtonStyleHook zu deklarieren und dort das DrawButton zu überschreiben. Den Code kannst du erstmal von der originalen Klasse übernehmen und dann am Anfang das LTextFlags entsprechend anzupassen.

Damit der Stylehook auch für deinen TrfButton funktioniert, musst du analog zu TButton einen class constructor und destructor anlegen, in dem der neue Stylehook registriert bzw. de-registriert wird.

Nur so als Idee: Ich würde statt einem TextAlign zwei separate Properties für HAlign und VAlign machen. Das fände ich übersichtlicher als aus neun Möglichkeiten die passende auswählen zu müssen.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat