![]() |
WndProc in Klasse
Wie kann ich eine WndProc in eine Klasse packen? Als Methode wird es schlecht gehen, da ja in einer solchen in EAX die Adresse des zugehörigen Objektes gespeichert wird. Die Methode ist dann also nicht "STDCALL-kompatibel" und erfüllt nicht die Voraussetzungen für eine WindowProc-Prozedur.
Ich habs jetzt noch nicht ausprobiert, aber aus oben genannten Gründen bin ich recht sicher, dass es nicht als Methode funktionieren wird. Weiß jemand, wie man das machen kann? |
Re: WndProc in Klasse
Moin Chewie,
schau Dir doch mal in den VCL Sourcen an, wie Borland das mit TForm.WndProc gelöst hat. |
Re: WndProc in Klasse
In der Hilfe nach AllocateHWnd() schauen.
Gruß Hagen |
Re: WndProc in Klasse
Zitat:
Edit: Wahrscheinlich erst ab D6 oder so dabei. |
Re: WndProc in Klasse
Moin Chewie,
vorhanden ist die Funktion schon, nur, zumindest in D5 nicht dokumentiert. :? |
Re: WndProc in Klasse
Und seit Delphi 6 von der Unit Forms.pas in Classes.pas gewandert.
|
Re: WndProc in Klasse
Oh. Auch gut. Danke, ich werds morgen mal ausprobieren.
|
Re: WndProc in Klasse
Notfalls hätte man auch Menu\Suchen\In Dateien suchen... und dort Borland\Delphi X\sources als Pfad ausgereicht.
Gruß Hagen |
Re: WndProc in Klasse
Jaja, klar, aber ich war zu faul, in den Sourcen zu suchen :wink:
Und bisher war die ZLib-Unit das einzige, wovon ich bisher eine Borland-Dokumentation vermisst habe (außer der WinAPI natürlich). |
Re: WndProc in Klasse
Mir ist gerade eingefallen, das mir das ganze ja gar nix bringt, weil ich ja die VCL nicht verwenden will. Und AllocateHWnd ruft ja ein ganzes Stück VCL-Routinen auf, sodass das Kopieren der Funktion auch nix bringt.
Gibt es denn keine einfache Methode, eine Methode als Prozedur zu simulieren? |
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:46 Uhr. |
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