Einzelnen Beitrag anzeigen

Der_Unwissende

Registriert seit: 13. Dez 2003
Ort: Berlin
1.756 Beiträge
 
#2

Re: Komponente gesucht: Label, Memo mit Anpassung an Hinterg

  Alt 15. Jan 2007, 12:48
Hi,
theoretisch müsstest Du das ganz gut selbst anpassen können. Erstell Dir einfach einen Nachfahren von TLabel und TMemo und sieh hier eine Methode vor, die auf die Botschaft CM_COLORCHANGED reagiert. Diese Botschaft wird von jedem Control (jede Elternkomponente muss ein Nachfahre von TConrol sein) ausgelöst, wenn die Farbe gewechselt wurde. Die Parameter kannst Du dabei nicht weiter ausnutzen, aber merkst Du Dir die Hintergrundfarbe des Parent kannst Du schauen ob diese sich geändert hat und ggf. selbst die Farbe wechseln.

Gruß Der Unwissende

[Add]
Was ich vergessen hatte zu erwähnen:
Die Nachricht wird durch die Funktion WindowProc (eigentlich eine Eigenschaft/ein Funktionszeiger) des TControl verarbeitet. Du müsstest also für den Parent diese WindowProc durch eine eigene ersetzen, die erst prüft was für eine Nachricht vorliegt, handelt es sich dann eben um CM_COLORCHANGED, dann reagier drauf, und danach die Botschaft auf jeden Fall an die originale WindowProc-Funktion weiterreicht (damit sich auch wirklich die Farbe ändert).
[/Add]
  Mit Zitat antworten Zitat