Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Interface Methode als Parameter übergeben (https://www.delphipraxis.net/211078-interface-methode-als-parameter-uebergeben.html)

himitsu 26. Jul 2022 12:49

AW: Interface Methode als Parameter übergeben
 
Das HandlePubFunc würde ich aber in TPubFunc mit integrieren.
Dort drin nicht nur die WrapperFunktion zurückgeben, sondern es direkt ausführen.

Uwe Raabe 26. Jul 2022 13:01

AW: Interface Methode als Parameter übergeben
 
Zitat:

Zitat von himitsu (Beitrag 1509292)
Das HandlePubFunc würde ich aber in TPubFunc mit integrieren.

Würde ich eben gerade nicht machen. Es kann ja durchaus mehrere HandlePubFunc geben. Das HandlePubFunc könnte ja auch völlig unabhängig von IPubFunc sein (dann sollte es natürlich anders heißen) und lediglich eine TJSONObjectFunc als Parameter benötigen. Können wir ja hier nicht wissen was da alles drin passiert.

Delphi-Quellcode:
procedure HandleJSONObject(AFunc: TJSONObjectFunc);
begin
  ...
  json := AFunc(jsonPara);
  ...
end

var
  xPubFunc : IPubFunc;
begin
  xPubFunc := xClient.Service<IPubFunc>;
  HandleJSONObject(TPubFunc.InstallEvent(xPubFunc));
  ...

  HandleJSONObject(TPubFunc.FireEvent(xPubFunc));
  ...
end;

t2000 27. Jul 2022 08:13

AW: Interface Methode als Parameter übergeben
 
Also ich habe jetzt die "häßliche" Methode von Uwe ausprobiert ... und .. es funktioniert eigentlich sehr gut.
Für's erste werde ich das so mal lassen, aber unter "Beobachtung" halten.
Vielen Dank euch allen.

Uwe Raabe 27. Jul 2022 08:45

AW: Interface Methode als Parameter übergeben
 
Zitat:

Zitat von t2000 (Beitrag 1509354)
Also ich habe jetzt die "häßliche" Methode von Uwe ausprobiert ... und .. es funktioniert eigentlich sehr gut.

Na ja, das ist doch das mindeste was man von von einer unschönen Lösung erwarten kann. Andernfalls wäre sie ja auch noch nutzlos.


Alle Zeitangaben in WEZ +1. Es ist jetzt 19:07 Uhr.
Seite 2 von 2     12   

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz