Einzelnen Beitrag anzeigen

Der schöne Günther

Registriert seit: 6. Mär 2013
6.159 Beiträge
 
Delphi 10 Seattle Enterprise
 
#1

on[XYZ]-Methoden: Nicht aufrufen wenn Programmcode die Komponente ändert

  Alt 22. Jul 2013, 12:03
Der Titel ist eine Katastrophe, bessere Vorschläge erbeten

Konkretes Beispiel: Setze ich in meiner VCL-TRadioGroup die Property ItemIndex um, so ergibt sich folgende Aufrufreihenfolge:

Code:
TCustomRadioGroup.SetItemIndex() -> TControl.Click -> myRadioGroup.OnClick()
Ich möchte nicht, dass das ganze Geraffel hintendran (onClick-Ereignishandler) ausgeführt wird, das ist doch nur dafür, wenn der Benutzer aktiv draufklickt und etwas ändern möchte.

Wie gehe ich hier am besten vor? Ist meine Absicht falsch? Setze ich das onClick -Ereignis vorher auf nil , ändere dann den ItemIndex und setze onClick wieder zurück?

Ich habe schon gesehen, wie Leute die Tag-Property dafür benutzt haben, um zwischen "eigener" Änderung und Veranlassung durch den Benutzer zu unterscheiden, aber das erscheint mir irgendwie nicht richtig...
  Mit Zitat antworten Zitat