Einzelnen Beitrag anzeigen

Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.453 Beiträge
 
Delphi 12 Athens
 
#6

AW: MDI Fenster schließt nicht richtig

  Alt 19. Okt 2016, 21:08
Der Code, der das Form1.Close aufruft und der das neue TForm1.Create macht, werden die direkt hintereinander ausgeführt? In dem Fall wird durch das Close selbst bei caFree das Form nicht sofort freigegeben. Vielmehr wird über Release eine Message in die Queue gestellt, die dann bei nächster Gelegenheit das Form freigibt.

Wenn das obige also der Fall ist, dann existiert während des erneuten TForm1.Create die alte Instanz noch und das führt zur Vergabe des neuen Namens.

Abhilfe: das caFree im FormClose-Event entfernen, ebenso wie das nil setzen. Dann noch das Form1.Close in ein Form1.Free abändern.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat