Einzelnen Beitrag anzeigen

TheReaper

Registriert seit: 27. Feb 2003
Ort: chemnitz
90 Beiträge
 
Delphi 2005 Personal
 
#18

Re: Event-Typen und warum deren Inhalte manchmal nicht stimm

  Alt 27. Jul 2009, 12:14
Zitat von BAMatze:
Das ist schonmal gut zu wissen. Meine Erfahrung besteht ja eigentlich nur daraus, dass ich einige Varianten hier aus der DP genommen hab, die ich gefunden (oder genannt bekommen) habe und dann ausprobiert (wobei meistens noch mindestens so viele Fehler aufgetreten sind, dass ich hier nochmal nachfragen musste). Habe dich jetzt so verstanden, dass ich meine Komponente wie folgt abändern sollte:
Naja, falsch ist es nicht aber auch nicht wirklich richtig. Ich nutze immer eine do-Procedur um events zu triggern. Außerdem sollte Immer der Sender mit angegeben werden.
Delphi-Quellcode:
{$M+}

TOnTischChange = procedure(Sender: TObject) of object;

Type TTischsteuerung = class(TWinControl)
  private
    ...
    //Variablen für Events
    FOnTischChange: TOnTischChange;
    ...
  protected
    // die event auslöser
    procedure doTischChange;
    ...
  published
    property OnTischChange: TOnTischChange read FOnTischChange write FOnTischChange;
    ...
  public
    //alternativ könnte auch die property OnTischChange hier aufgeführt sein
    ...
end;

procedure TTischsteuerung.doTischChange;
begin
  if Assigned(FOnTischChanged) then
    FOnTischChanged(self);
end;

procedure TTischsteuerung.foo
begin
  ...
  // Event(s) auslösen
  doTischChange;
  ...
end;
Das Ganze sieht erstmal etwas komplizierter aus aber es bringt viele Vorteile beim erweitern oder debuggen. Außerdem macht es Borland genauso.
  Mit Zitat antworten Zitat