我想作MDI显示过的窗体显示在主菜单上,这样就可以通过主菜单来调出已经显示过的MDI窗体,下面这段代码是把显示过的MDI子窗体添加到主菜单中,MenuExec函数用来执行菜单项对应的动作。我想问一下"把MDI窗体添加进去"的代码应该放在哪边最合适? // 把MDI窗体添加进去。
  MNadd.Clear;
  for i := 0 to Self.MDIChildCount -1 do
    begin
      P := TMenuItem.Create(Self);
      P.Caption := Self.MDIChildren[i].Caption;
      P.GroupIndex := 1;
      P.RadioItem := true;
      P.OnClick := MenuExec;
      if Self.MDIChildren[i].Caption = Self.ActiveMDIChild.Caption then
        P.Checked := true;
      MNadd.Insert(0, P);
    end;
procedure TForm1.MenuExec(Sender: TObject);
  var i: Integer;
begin
  for i := 0 to Self.MDIChildCount - 1 do
  begin
    TMenuItem(Sender).Checked := false;
    if TMenuItem(Sender).Caption = Self.MDIChildren[i].Caption then
      begin
        TMenuItem(Sender).Checked := true;
        Self.MDIChildren[i].Show;
        Exit;
      end;
   end;
  //ShowMessage(TMenuItem(Sender).Caption);
end;