Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu
Online

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.196 Beiträge
 
Delphi 12 Athens
 
#22

Re: Procedure als Event definieren? Wenn ja, wie?

  Alt 8. Apr 2010, 22:02
Also dein Code aus der #19 sollte so eigentlich funktionieren.
An deinem gezeigten Beispielcode dürfte es noch nichtmal ein Problem geben, selbst wenn du "ausversehn" der Dummy-Objekt in deiner Initprozedur wieder freigibst.

Zitat:
Hierfür kannst du notfalls auch eine eigene Klasse anlegen, davon ein Objekt erstellen und die Methode dieses Objektes nun dem Event zuweisen.
Delphi-Quellcode:
// Hierfür kannst du notfalls auch eine eigene Klasse anlegen,
type
  TDummeKlasse = Class(TObject)
    Procedure BeforeInsert(DataSet: TDataSet);
  End;

procedure TDummeKlasse.BeforeInsert(DataSet: TDataSet);
begin
  Showmessage(Command.SQL.Text);
end;

---

function GlobalInit : Boolean;
var
  X : TDummeKlasse;
begin
  result := false;
  // davon ein Objekt erstellen
  X := TDummeKlasse.create;
  [...]
  // und die Methode dieses Objektes nun dem Event zuweisen.
  command.BeforeInsert := X.BeforeInsert;
  [...]
end;

// X besser globaler deklarieren
// und erst freigeben, wenn "command" gelöscht wurde
// oder wenn TDummeKlasse.BeforeInsert nicht mehr benötigt wird.
Wie gesagt, so ist es eigentlich richtig,

also muß der Fehler, warum es immernoch nicht geht, irgendwo anders sein.
$2B or not $2B
  Mit Zitat antworten Zitat