1) was mich jetzt noch mal interessiert ist, wie dann eigentlich proceduren implementiert sind, welche auf (windows-) messages reagieren (zB Painter). da der code ja immer vorhanden ist, unabhängig der klasseninstanz, muß ja irgendwo geregelt werden, welche instanz nun die message erhält, und welche nicht. ist es theoretisch vorstellbar, das eine nil-klasse eine message (zB wm_paint) erhält?
Innerhalb des Constructors eines Formulars wird die WndProc gesetzt, welche von Windows die Nachrichten enthält. Diese Nachrichten werden dann (einfach formuliert) per
Form.Dispatch
an das jeweilige Form geschickt.
Dispatch
ist in
TObject
deklariert und sucht sich an Hand der Nachrichtentabelle des Objekts die passend
message
Methode raus oder ruft, falls es keine gibt, die virtuelle Methode
DefaultHandler
auf.
Rein theoretisch sollte das auch mit einer ungültigen Instanz funktionieren, aber wie jeder Hack ist diese Angabe
ohne Gewähr.
Gruß,
Sven