Ich glaube, ich konnte das Problem lösen. Wie unter
http://www.swissdelphicenter.ch/de/showcode.php?id=1671 nachzulesen ist,
Zitat:
// Methodenzeiger in Funktionszeiger umwandeln
// Oft ist es nötig, einer
API-Funktion einen Funktionszeiger, der auf eine Callbackfunktion zeigt, zu
// übergeben. Leider ist ein Funktionszeiger mit Methodenzeigern inkompatibel, und so ist es zunächst
// unmöglich, eine Methode als Callback anzugeben.
// Man kann zwar einen Methodenzeiger auf die Art "@TKlasse.EineMethode" in einen Funktionszeiger casten,
// allerdings darf man dann in dieser Methode dann auf keine Variablen (und auch auf Methoden, die diese
// Variablen benutzen) der Klasse zugreifen, da diese immer Instanzgebunden sind und man in diesem Falle
// keine Instanz angegeben hat (ähnlich einer Klassenmethode).
Darf ich keine Prozedur verwenden, sondern nur eine Funktion. Absolute unsinnig von Delphi, aber "wenn's schä' macht"...
Änderungen:
FChangeCausedbyObjectB entfällt.
FObjectB.CallBackList.Add(Pointer(ChangeCausedbyOb jectB));
function TObjectA.ChangeCausedbyObjectB: Boolean;