mtm - Mi 15.10.14 17:32
Titel: Action in eigener Komponente
Hallo zusammen,
ich habe ein kleines Problem. Ich bin dabei eine eigene Komponente zu erstellen (eine Art Schalter mit LED). Dieser Komponente will ich auch Actions zuweisen können. Das funktioniert auch ohne größere Probleme. Die Aktion wird beim anclicken der Komponente ausgeführt. Nun möchte ich aber, daß, wenn sich zur Laufzeit an der Action etwas ändert (Caption, Checked, Enabled), diese Änderung auch in der zugewiesenen Komponente sichtbar werden. Wie kriege ich das hin, daß die Komponente merkt, daß sich in der Action etwas geändert hat.
Ich habe schon gesucht und sogar 2 ähnliche Fragen (bzw. gleiche) gefunden, dort ist aber keine Antwort gegeben worden. Ich wollte dieses Problem deswegen noch einmal in Erinnerung bringen.
bis dene und danke im Voraus
mtm
siehe :
http://www.delphipraxis.net/182291-action-eigener-komponente-new-post.html
Blup - Mo 20.10.14 09:56
Dafür implementiert man normalerweise für die betreffenden Property Set-Methoden.
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13:
| TMyLED = class(...) private FChecked: Boolean; procedure SetChecked(AValue: Boolean); published property Checked: Boolean read FChecked write SetChecked; end;
procedure TMyLED.SetChecked(AValue: Boolean); begin FChecked := AValue; Invalidate; end; |
Die Methode "GetActionLinkClass" kann überschrieben werden, wenn man ganz speziell auf Änderungen der Action reagieren will.