Delphi中MDI父窗体与子窗体菜单合并

如果你写的MDI程序中,要将父窗体与子窗体菜单融合在一起,Delphi提供了非常方便的方法.将父窗口的上级菜单比方说"File"文件,有个属性GroupIndex,设为0,将子窗体的菜单比方说"Funcion"功能,将GroupIndex设为1,这样的话,在打开子窗体的时候,就会将菜单合并在一起了.如果你不改这个属性的话,一般来说,GroupIndex都是0,这样一来,打开子窗体的时候,父窗体的菜单就看不到了.还有注意,将菜单本身的AutoMerge(自动合并)设为false,如果放成true的话,两个菜单就会都看不到的.

MenuItem有一个“GroupIndex”属性,将你要溶合的MDI父窗口和子窗口的某个菜单的GroupIndex设成相同的值就OK了。
---------------------------------------------------------------

合并菜单时主要使用两个属性:窗体的Menu属性和菜单控件的GroupIndex属性。
由于一个窗体一次只能使用一个菜单,所以必须用Menu属性指明窗体当前使用的菜单控件名。
GroupIndex属性指明每个菜单项在菜单中的位置。可按照以下规则确定各菜单项的GroupIndex属性:
1)数值从0开始,排在菜单的最左端,并向右依次增大。如果主菜单与被合并的菜单中有相同的菜单项,则可以将两个菜单项的GroupIndex属性设为一个值,这样在菜单合并时,子菜单就会替换掉主菜单上的相应菜单项。
例如:主窗体和子窗体的菜单控件中File菜单项的GroupIndex属性值都设为0,打开子窗体后File菜单就会自动扩展。
2)如果需要将被合并菜单中的菜单项插入到主菜单中去,则可以将主菜单中的GroupIndex属性跳过一个序列值,而将插入菜单项的GroupIndex属性值设为空缺的那个值。
例如:在主窗体中我们将File和Help菜单项的GroupIndex分别设为0和4,而在子窗体中Edit、Search和Window菜单项的 GroupIndex分别设为1、2和3,或1、1和1(此时三个菜单的排列顺序与在菜单编辑器里的排列顺序一致),则打开窗体后,Edit、 Search和Window菜单项就会自动插入。
3)将同一个窗体中的多个菜单项的GroupIndex属性设为相同的值,则它们的排列顺序在菜单融合时不发生变化。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值