Einzelnen Beitrag anzeigen

Benutzerbild von stoxx
stoxx

Registriert seit: 13. Aug 2003
1.111 Beiträge
 
#4

Re: Multicaster in Delphi 2009

  Alt 21. Apr 2009, 17:17
geh jedes Element der Liste durch und prüfe so auf Gleichheit.
Ich vermute, dass Du das Event beim reinen hinschreiben sogar aufrufst, und das willst Du ja nicht.
so geht es bei meinem Multicaster.

Delphi-Quellcode:
procedure TButtonMulticaster.RemoveEvent(event: TNotifyEvent);
var

...
  evList: eventList;
  for i := (eventList.Count - 1) downto 0 do begin
    ev := eventList.Items[i];

    if (TMethod(ev).Code = TMethod(event).Code ) and
       (TMethod(ev).Data = TMethod(event).Data ) then begin
            eventList.Delete(i);
// exit;
       end; // if
  end; // for

end;
Phantasie ist etwas, was sich manche Leute gar nicht vorstellen können.
  Mit Zitat antworten Zitat