Einzelnen Beitrag anzeigen

FriendOfDelphi

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

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

  Alt 5. Dez 2010, 18:06
Wenn der Compiler meckert, tauscht man override einfach gegen overload? Eine sehr kreative Vorgehensweise. Wie wäre es denn mit
Delphi-Quellcode:
protected
  procedure WndProc(var Message: TMessage); override;
Nun könntest Du in der überladenen Methode einfach auf Deine Message prüfen und falls kein Treffer, inherited aufrufen, das sollte dann schon passen.
Ich muss wohl noch viel lernen. Dachte, es wäre ein Schreibfehler...

Ich habe jetzt noch folgendes Problem:
Delphi-Quellcode:
[...schnipp...]

  TMeineKlasse = class(TWinControl)
    procedure WMAdsDeviceNotification(var Message: TMessage); message WM_ADSDEVICENOTIFICATION; //feste Zuordnung von Methode zur Windows-Message
  private
    { Private-Deklarationen }
    FMessageID: LongWord;

[...schnipp...]

  public
    { Public-Deklarationen }
    property MessageID: LongWord read FMessageID;

[...schnipp...]
Ich kann die Property/Eigenschaft TMeineKlasse.MessageID in der Prozedur
Delphi-Quellcode:
Procedure NotificationCallback( pAddr:PAmsAddr;
                                pNotification:PAdsNotificationHeader;
                                hUser:Longword ); stdcall;
begin
    PostMessage(HWND(hUser), TMeineKlasse.MessageID , 0, 0);
end;
nicht verwenden.
Der Compiler meldet den Fehler "Methodenbezeichner erwartet".
Kennt er die zu dem Zeitpunkt noch nicht?
Herzlichen Gruß
FriendOfDelphi
  Mit Zitat antworten Zitat