Thema: Delphi Create = Create?

Einzelnen Beitrag anzeigen

Benutzerbild von alcaeus
alcaeus

Registriert seit: 11. Aug 2003
Ort: München
6.537 Beiträge
 
#2

Re: Create = Create?

  Alt 21. Apr 2005, 11:10
Nein, definitiv nicht. Der Konstruktor muss einer Objektvariable zugewiesen werden, mit der du arbeiten kannst.
Bei der ersten Variante erstellst du zwar das zweite Form, aber kannst es nicht verwenden. Der Free-Aufruf zerstoert dann das Form in dem du dich befindest (weil Free in Self.Free umgewandelt wird). Die korrekte Arbeitsweise ist die zweite.

Wenn du hingegen die Objektvariable umgehen willst, musst du so arbeiten:
Delphi-Quellcode:
with TSomeForm.Create(self) do
begin
//...
  ShowModal;
//...
  Free;
end;
Greetz
alcaeus
Andreas B.
Die Mutter der Dummen ist immer schwanger.
Ein Portal für Informatik-Studenten: www.infler.de
  Mit Zitat antworten Zitat