Forum: Programmieren allgemein
by TigerLilly,
19. Sep 2017
So geht´s natürlich - ohne Generics:
TNotifyEventChain = class
EventList: IList<TNotifyEvent>;
constructor Create;
destructor Destroy;
procedure ChainEvent(NewEvent: TNotifyEvent);
function AttachEvent(OldEvent:TNotifyEvent):TNotifyEvent;
procedure BaseEvent(Sender:TObject);
end;
Forum: Programmieren allgemein
by TigerLilly,
19. Sep 2017
Das passt schon so. Der Aufruf wäre so:
AttachEvent(grid.OnResize);
Und die Methode sichert den aktuellen Event in einer Liste und weist einen neuen Event zu - eben BaseEvent, der dann dafür sorgt, dass der alte Event und allfällige weitere aufgerufen wird.
Das war der Plan :- )
Forum: Programmieren allgemein
by TigerLilly,
19. Sep 2017
Ok, ja, das hat Sinn, wenn man es so betrachtet. Danke!
Forum: Programmieren allgemein
by TigerLilly,
19. Sep 2017
Nope.
Unit4.pas(76): E2010 Inkompatible Typen: 'T' und 'procedure, untyped pointer or untyped parameter'
Forum: Programmieren allgemein
by TigerLilly,
19. Sep 2017
Wenn ich versuche, das zu komplilieren
type
TEventChain<T> = class
constructor Create;
destructor Destroy;
procedure ChainEvent(NewEvent: T);
function AttachEvent(OldEvent:T):T;
procedure BaseEvent<T>;
end;