AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Object-Pascal / Delphi-Language Delphi Adresse einer Objekt-Procedure übergeben
Thema durchsuchen
Ansicht
Themen-Optionen

Adresse einer Objekt-Procedure übergeben

Ein Thema von WoTo · begonnen am 29. Mai 2006 · letzter Beitrag vom 29. Mai 2006
Antwort Antwort
WoTo

Registriert seit: 28. Jun 2004
Ort: Rotenburg (Wümme)
102 Beiträge
 
Delphi 2005 Enterprise
 
#1

Adresse einer Objekt-Procedure übergeben

  Alt 29. Mai 2006, 11:24
Hallo zusammen,
bei der folgenden Anweisung gibt der Compiler den Hinweis "Variable erforderlich" aus !

FTrigger.PtrTriggerEnd := @FBWManager.TriggerEnd; Wobei FTrigger.PtrTriggerEnd wie folgt deklariert ist:

property PtrTriggerEnd : Pointer write FPtrTriggerEnd; Und FBWManager.TriggerEnd sieht wie folgt aus:

Delphi-Quellcode:
TBWManager = class(TObject)
private
.
.
.
public
procedure TriggerEnd;

end;
Ich möchte nur die Adresse der Procedure FBWManager.TriggerEnd übergeben.

Was mache ich falsch ?

MfG
Woto
  Mit Zitat antworten Zitat
Hawkeye219

Registriert seit: 18. Feb 2006
Ort: Stolberg
2.227 Beiträge
 
Delphi 2010 Professional
 
#2

Re: Adresse einer Objekt-Procedure übergeben

  Alt 29. Mai 2006, 11:59
Hallo Woto,

eine Methode kann nicht über einen einfachen Pointer adressiert werden. Du solltest die Referenz als TThreadMethod vereinbaren und nicht als pointer.

Die Zuweisung sieht dann so aus:

FTrigger.PtrTriggerEnd := FBWManager.TriggerEnd; Gruß Hawkeye
  Mit Zitat antworten Zitat
Benutzerbild von Kedariodakon
Kedariodakon

Registriert seit: 10. Sep 2004
Ort: Mönchengladbach
833 Beiträge
 
Delphi 7 Enterprise
 
#3

Re: Adresse einer Objekt-Procedure übergeben

  Alt 29. Mai 2006, 12:12
Oder du machst dir deine eigenen MethodenTypen, falls du Rückgabe werte oder Parameter benötigst und benutzt diese dann:

Delphi-Quellcode:
Type
  TMeineMethode = Procedure( Const MeinStr: String; Var MeinVar: Integer ) Of Object;
  TMeineMethode2 = Function( Const MeinStr: String; Var MeinVar: Integer ): Integer Of Object;
Bye Keda
Christian
  Mit Zitat antworten Zitat
WoTo

Registriert seit: 28. Jun 2004
Ort: Rotenburg (Wümme)
102 Beiträge
 
Delphi 2005 Enterprise
 
#4

Re: Adresse einer Objekt-Procedure übergeben

  Alt 29. Mai 2006, 12:39
Hallo zusammen,
eure Antworten haben mir sehr geholfen.

Ich habe mir einen eigenen MethodenType erstellt und diesen statt Pointer verwendet.

Vielen Dank

MfG
Woto
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 07:22 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz