本帖最后由 luojianfeng 于 2014-01-14 19:49:23 编辑

解决方案 »

  1.   

    隐藏mainmenu的items
      for i := 0 to MainMenu1.Items.Count - 1 do
      begin
        MainMenu1.Items[i].Visible :=False;
      end;
      

  2.   

    MainMenu1.visible := disable; //OK?"
      

  3.   

    SetMenu(Handle,0);// 隐藏
    SetMenu(Handle,MainMenu1.Handle); // 显示
      

  4.   

    可能是你问过的那些人都没太用过sdk编程吧,sdk程序创建菜单最后一部就是setmenu,将一个菜单句柄设置给一个窗口。vcl、.net等这些程序框架把api都给包装起来了,隐藏了细节简化了操作方便使用,你也可以跟进tmainmenu的源码去看它如何构建一个菜单并最终显示的。
      

  5.   

    formmain.mainmenu:=nil;应该也可以吧?
      

  6.   

    告诉你一个方法:
    打开.DFM文件,找到 mainMenu,将到放到 你想放到的 你容器下面,就可以修改 mainMenu的显示方式了,
    或在 .dfm文件中删除mainMenu,窗体上就不会显示了。