Entwickler-Ecke
Delphi Language (Object-Pascal) / CLX - Event mit Wertübergabe
huhn - So 24.10.10 14:24
Titel: Event mit Wertübergabe
Hi Forum,
ich erstelle gerade eine eigene Klasse bei der ich ein event integrieren will mit Wertübergabe. Nur irgendwie steh ich auf dem Schlauch wie ich das am dümmsten machen soll und mit der Suche bin ich auch nicht richtig glücklich geworden.
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13:
| Type blubb = class ... published property Event2:xxxx read yyyy; end;
procedure TForm1.OnEvent2(Sender:Tobject; msg:string); begin . . . end; |
so hatt ich mir das vorgestellt, wie man das mit normalen Events macht, also TNotifyevent ist mir klar nur das zu erweitern klappt irgendwie net so. Ich hoffe ihr könnt mir helfen.
mfg huhn
Gausi - So 24.10.10 14:32
Definiere dir einen neuen Typ
Delphi-Quelltext
1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11:
| Type TMeinTollesNeuesEvent = procedure(Sender: TObject, Dingens: Integer; Kirchens: String) of Object;
private fNeuesEvent : TMeinTollesNeuesEvent;
Public NeuesEvent: TMeinTollesNeuesEvent read fNeuesEvent write fNeuesEvent; |
Xion - So 24.10.10 15:40
Beim Aufrufen in der Klasse nicht vergessen, zu überprüfen, ob das Event auch "aboniert" wurde:
Delphi-Quelltext
1: 2: 3: 4: 5:
| procedure TBlubb.SchmeissEvent; begin if Assigned(fNeuesEvent) then fNeuesEvent(Self, 42, '42'); end; |
huhn - So 24.10.10 23:28
Danke euch ;)
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!