while mainform.MDIChildCount<>0 do begin mainform.MDIChildren[0].Close; mainform.MDIChildren[0].Free; end;
procedure TMainForm.closeAll; var I: Integer; begin for I := MDIChildCount-1 downto 0 do MDIChildren[I].Close; end;
if self.MDIChildCount>0 then self.MDIChildren[0].Close; CreateMDIChild('NONAME' + IntToStr(MDIChildCount + 1));
来晚了!主窗口调用Form2的事件代码: for i:=0 to Form1.MDIChildCount-1 do Form1.MDIChildren[i].Close; Application.CreateForm(TForm2, Form2); Form2.Show();Form2的OnClose事件代码: Action := caFree;
mainform.MDIChildren[0].Close;
mainform.MDIChildren[0].Free;
end;
var
I: Integer;
begin
for I := MDIChildCount-1 downto 0 do
MDIChildren[I].Close;
end;
CreateMDIChild('NONAME' + IntToStr(MDIChildCount + 1));
for i:=0 to Form1.MDIChildCount-1 do
Form1.MDIChildren[i].Close;
Application.CreateForm(TForm2, Form2);
Form2.Show();Form2的OnClose事件代码:
Action := caFree;