Einzelnen Beitrag anzeigen

FriendOfDelphi

Registriert seit: 21. Mai 2010
163 Beiträge
 
Delphi 5 Professional
 
#45

AW: Wie kann ein Zeiger auf eine Funktion als Paramater übergeben werden?

  Alt 7. Dez 2010, 10:24
Ein normaler Prozedurzeiger besteht aus nur einem Zeiger,
wärend ein Zeiger auf eine Methode aber aus zwei Zeigern besteht (Zeiger auf Methode + Zeiger auf das Objekt).

2 Zeiger = 2 * 4 Byte = 8 Byte und dieses paßt nunmal nicht in einen Integer (4 Byte) rein.


Prozedur- und Methodenzeiger sind nunmal nicht kompatibel zueinander.
Wenn also eine Prozedur verlangt wird, dann kann man nur eine Prozedur angeben und keine Methode.
Methode = "Prozedur" in Objekt
Ok, dass leuchtet ein.
Die Prozedur darf also nicht Teil der Klasse, sondern nur Teil der Unit werden.
Gibt es denn eine Möglichkeit innerhalb der Prozedur auf das Attribut/Feld MessageID zuzugreifen.
Das Attribut/Feld durch eine globale Variable zu ersetzen hilft nicht, da ja jedes Objekt seine eigene Windows-Message-ID erhalten muss.
Herzlichen Gruß
FriendOfDelphi
  Mit Zitat antworten Zitat