Einzelnen Beitrag anzeigen

jbg

Registriert seit: 12. Jun 2002
3.483 Beiträge
 
Delphi 10.1 Berlin Professional
 
#10

AW: Controls im PageControl verschwinden unkontrolliert

  Alt 25. Mai 2011, 22:16
Ich bin auch an der Lösung dieses Problems interessiert
Das Abfangen von WM_UPDATEUISTATE, das die VCL sich selbst schickt (der Code fehlt noch oben) ist eigentlich nichts anderes als ein Workaround für ein viel tiefer liegendes Theming Problem. Ich bin gerade dabei zu analsysien, warum alle nicht-Delphi Programme mit CheckBoxen keine Probleme habe. Und meine ersten Nachforschungen ergeben, dass TButtonControl.CNCtlColorStatic die CheckBoxen übermalt, und Windows nur die Unterstriche zeichnet, womit vom Control nicht viel übrig bleibt.
Das ganze Problem beginnt aber schon in TWinControl.DefaultHandler, bei dem CN_CTLCOLORMSGBOX..CN_CTLCOLORSTATIC die Hintergrundfarbe auf den Brush ändern, was bei nicht-gethemeten Anwendungen in Ordnung ist, aber Windows weiß bei gethemeten Anwendungen besser, was wie zu zeichnen ist als die VCL.
  Mit Zitat antworten Zitat