Folgender Code-Auschnitt sollte verdeutlichen, wie Du überprüfst, ob ein bestimmtes Formular bereits existiert. Wenn es existiert, wird es nach vorn gebracht, wenn nicht, dann wird es erstellt.
Delphi-Quellcode:
procedure TForm1.mniShowFormTyp1(Sender: TObject);
var
I: Integer
begin
for I := 0 to Pred(MDIChildCount) do
if MDIChildren[I] is TMDIFormTyp1 then
begin
MDIChildren[I].BringToFront;
Exit;
end;
TMDIFormTyp1.Create(Self);
end;
Ich hoffe, daß es Dir weiterhilft.
...

...