Ich hätte da einen Workaround, der nicht wirklich perfekt ist, aber vielleicht ausreicht:
Zunächst braucht man eine zusätzlich procedure
Delphi-Quellcode:
procedure TForm1.DoRestore(Sender: TObject);
begin
if IsWindowVisible(Form2.Handle) and not Form2.Visible
then
ShowWindow(Form2.Handle, SW_HIDE);
end;
Diese wird dann an einer geeigneten Stelle mit dem Application.OnRestore-Eregniss verbunden. Z.B. so:
Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);
begin
Application.OnRestore := DoRestore;
end;
Ein bißchen drumherum braucht man auch noch - wenn z.B. Form2 nicht mehr existiert. Aber das Prinzip ist, glaube ich erkennbar. Wenn ich mich richtig erinnere, ist übrigens ab Delphi 2007 alles anders - zumindest wenn "Application.MainFormOnTaskBar := True;" gesetzt ist.