请教一个控制窗口的显示的问题:
我想当我点击打开一个窗口的同时,关掉另一个已经打开的随机窗口,也就是在任意时刻只能显示一个窗口,不知道我的问题描述清楚了没有。
请各位大哥大姐帮忙!

解决方案 »

  1.   

    每个Form的OnShow都这样写:
    var
      i :Integer;
    begin
      for i := 0 to Screen.FormCount-1 do
      if (Screen.Forms[i].Name <> self.Name) and
         (Screen.Forms[i].Name <> Application.MainForm.Name)
      then 
         Screen.Forms[i].Close;
    end;
    不过这有什么用呢?
      

  2.   

    若form1已经打开,form2为待打开的form1.close;
    form2.show;若form2没有创建,
    先form2:=Tform2.create(self);
      

  3.   

    form1.close;
    form2:=tform2.create(application);
    form2:=form2.showmodal;
    form2.free;