Hi,
Alternative zu deiner Zeiger-Geschichte wäre das OnDestroy-Event von Form2 auf eine Methode in Form1 umzuleiten und dort das Feld zu nillen:
Delphi-Quellcode:
if not Assigned(TestForm) then
TestForm:=TForm2.Create(self);
TestForm.OnDestroy:=TestFormDestroy;
TestForm.Show;
...
procedure TForm1.TestFormDestroy(Sender: TObject);
begin
TestForm:=nil;
end;
Nachteil an der Geschichte wäre, wenn die OnDestroy schon durch was anderes belegt ist - hier könnte man diese Wert allerdings "zwischenspeichern" und dann im TEstFormDestroy aufrufen...
Grüße