Zitat von
jonny:
wenn ich es schliesse mit Close dann kann ich kein neues mit dem gleichen Namen erstellen weil das alte ja noch da ist wie kriege ich es ganz weg?
Hm.
Delphi-Quellcode:
var
Form1: TForm1;
MyForm2: TForm;
implementation
{$R *.dfm}
uses
Unit2;
procedure TForm1.Button1Click(Sender: TObject);
begin
Application.CreateForm(TForm2, MyForm2);
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
if Assigned(MyForm2) then
MyForm2.Show;
end;
procedure TForm1.Button3Click(Sender: TObject);
begin
if Assigned(MyForm2) then
MyForm2.Free;
end;
Mit Button1 erzeuge ich die zweite Form. Mit Button2 zeige ich sie an. Wenn ich sie jetzt mit Button3 wieder schließe / freigebe, kann ich sie mit Button1 wieder ohne Probleme erzeugen. Also irgendwas machst du da falsch, aber sehen tue ich es jetzt auch nicht.
Delphi-Quellcode:
procedure TForm1.Button4Click(Sender: TObject);
begin
if (Assigned(MyForm2)) and (MyForm2.Visible) then
MyForm2.BringToFront;
end;
Und wenn sie gerade nicht sichtbar ist, bekomme ich sie mit Button4 wieder "nach vorne".