Einzelnen Beitrag anzeigen

Benutzerbild von arc
arc

Registriert seit: 6. Nov 2009
Ort: Elbflorenz
62 Beiträge
 
FreePascal / Lazarus
 
#1

Eigenes Event anlegen + Event Handler

  Alt 18. Feb 2012, 17:18
Delphi-Version: 7
Ich habe bereits nach Event Handler und method pointer im Forum gesucht, aber nur die Variante gefunden, daß jemand einen eigenen Eventhandler zuweisen möchte. Das habe ich bereits gemacht und das klappt auch.

Nun habe ich mir jedoch eine eigene Button Klasse geschrieben und möchte dieser Klasse ein OnClick Event spendieren, daß ich später mit einem Eventhandler in der Form MyButton.OnClick:=bla; belegen kann.

Nun die Frage, wie legt man OnClick an? Ich habe es als OnClick:TProcedure; angelegt, da kommt natürlich der Fehler "Incompatible Types: regular procedure and method pointer". Als OnClick:TMethod; ging es auch nicht. Wie legt man soetwas an?

Hier etwas Code dazu:
Delphi-Quellcode:
     TToggleButton = class(TConnector)
                      protected
                        selected:boolean;

                      public
                        OnClick:TProcedure;
                        property isSelected:boolean read selected write selected;

                        constructor Create(newtarget:TModule); virtual;
                        procedure OnClickActive;
                        procedure OnClickBypass;
                    end;
OnClick soll je nach Anwendungsfall durch OnClickActive oder OnClickBypass ersetzt werden. Das könnte ich natürlich auch anders lösen, aber ich möchte gern etwas neues lernen.

Hat jemand eine Idee? Danke!
  Mit Zitat antworten Zitat