为何在MDI子窗体中设置菜单后一打开该子窗体原先在MDI窗体上的菜单就会消失,关闭子窗体后,MDI的菜单又会重新出现?有什么办法解决这个菜单隐藏的问题?

解决方案 »

  1.   

    打开子窗口的时候MDI显示的是子窗口的菜单,如果子窗口没有菜单,当然隐藏了,这个没有办法解决,你可以把子窗口的菜单设计成跟MDI窗口的菜单一致,是麻烦了一些~~
      

  2.   

    要用api函数来处理
    过去看到别人写过
    没有记下来
    现在用vb.net这个问题就很好处理了
      

  3.   

    顯示的時候總是會顯示ActiveForm的菜單﹐如果你要解決﹐你就干脆FORM和MDI窗體做一樣的菜單好了。
      

  4.   


    楼上的说的太复杂了吧!!这可是一个VB入门级的问题啊
    楼主所要的效果是不是这样:
             
            
           当MDI菜子单没有打开的时候,MDI菜单上只有几个基本的菜单没有具体的操作功能。
           当MDI菜子单打开的时候,MDI菜单上就出现了很多的操作菜单。楼主可以这样做:
           
           首先在MDI菜单上建立好基本的菜单。
           然后在MDI子菜单上建立MDI菜单中所有的菜单,在加上你要求的MDI子菜单上所独有的菜单,即:MDI子菜单拥有包括MDI菜单内所有的菜单项目。
           这样,当MDI子菜单关闭的时候,MDI菜单上就只有它本身的几个基本菜单项目,而当MDI子菜单打开的时候,MDI子菜单就或将MDI菜单上所有的项目全部覆盖。就可以达到目的了。
      

  5.   

    真的是没办法了吗?
    看来只能把子窗口的菜单设计成跟MDI窗口的菜单一致这种方法了.
      

  6.   

    错,你可以把子窗口的菜单合并到MDI窗体上面,这样就在MDI上多了子窗口的菜单。试试看?
      

  7.   

    喔上面大家说的都不是,应该是在CHILD FORM里面有个选项是NEGOTIATEMENUS属性,做成FALSE的话,子菜单就不会出现在MDI FORM的菜单上了,试看看吧?