我是一名出学者!!!
  我现在在MDI中点击一下主窗口下拉菜单m_menu1就出现一个子窗口m_child1,点击一下主窗口下拉菜单m_menu2就出现一个子窗口m_child2,而且我在点击菜单出现子窗口的同时菜单同时消失.
  我现在的问题是:在子窗口关闭的同时相应的下拉菜单也恢复回来,这个我却实现不了.请各位大侠指点一二.我的代码如下:
  打开窗口:
     procedure Tu_main.Child_1Click(Sender: TObject);
     var u_Child_1: Tu_Child_1;
     begin
     u_Child_1 := Tu_Child_1.Create(self);
     u_Child_1.Show;
     Child_1.Free;
     end;
  关闭子窗口:
     procedure Tu_Child_1.FormClose(Sender: TObject; var Action: TCloseAction);
     var Child_1: TMenuItem;
     FirstMenue1 : TMenuItem;
     begin
       Action := cafree;
       Child_1 := TMenuItem.Create(self);
       FirstMenue1 := u_main.MainMenu1.Items[0];
       FirstMenue1.Caption := '窗口1';
       Child_1.add(FirstMenue1);
     end;
  我在上述关闭子窗口中创建子菜单的时运行时提示"Menu Inserted twice"的错误,请问用Free在内存中释放掉的子菜单怎么才能恢复回来.