Einzelnen Beitrag anzeigen

Olli
(Gast)

n/a Beiträge
 
#4

Re: Fehler bei Messagehandler für WM_MOVE

  Alt 5. Sep 2005, 11:18
Zitat von dbdeath74:
Hab das ganze jetzt mit "if assigned(xy)" abgefangen, aber ganz verstehen tu ich es nicht

Also warum er beim Createn ein WM_Move bekommt, bzw wieso er dieses dann sofort bearbeitet anstatt erstmal alle Forms zu createn.
Was ist daran so unverständlich? WM_MOVE wird gesendet, wenn das Form bewegt wird. Eine Bewegung von "nicht-vorhanden" zu Position x/y ist ja wohl ein solcher Fall. Es ist also völlig korrekt. Desweiteren wird natürlich zuerst das Elternfenster und dann die Kindfenster auf ihm erzeugt. Entsprechend kann man auf Kindfenster noch nicht immer während der Initialisierung zugreifen. Würdest du direkt nonVCL benutzen, würde das auch klarer und die Auswirkungen wären nicht so krass, weil du dann eben nur Nachrichten sendest. Und den Funktionen ist es im Prinzip egal, ob die Nachrichten an ein nichtvorhandenes Fensterhandle gehen oder nicht. Es würde eben dann zu diesem Zeitpunkt noch nichts passieren. Bei Objekten und deren Instanzenpointern ist das natürlich etwas anders ...
  Mit Zitat antworten Zitat