在线等

解决方案 »

  1.   

    判断一个MDIChild窗体是否存在Fname是要检测的窗体的名字,正在返回False。
    function TMainForm.ActionFlagYesNo(Fname: String): Boolean;
    var i:Integer;
    begin
      ActionFlagYesNo:=False;
      for i:=0 to MainForm.MDIChildCount-1 do
        begin
          if UpperCase(MainForm.MDIChildren[i].Name)=UpperCase(Fname) then
             ActionFlagYesNo:=True;
        end;
    end;
    通常情况下如果要让某个MDIChild只创建一只可以这样做:
      if ActionFlagYesNo('MyChildForm') then
        begin
          MyChildForm.WindowState:=wsMaximized;
        end
      else
        begin
          Application.CreateForm(TMyChildForm,MyChildForm);
          MyChildForm.WindowState:=wsMaximized;
          MyChildForm.Show;
        end;
    当然如果你想知道某个字窗体是否为活动的还可以用MyChild.Active来判断。