读书人

关于MDIFORM的菜单设置小弟我还真是有

发布时间: 2012-02-19 19:43:38 作者: rapoo

关于MDIFORM的菜单设置我还真是有点不明白
MDI主窗体有菜单,所有子窗口也有自己的菜单
客户提问:
最小化子窗口时,显示主菜单的菜单.

这还真是很难实现
大家有何高招??

[解决办法]
其实在做MDI子窗体上的菜单要和主窗体上的菜单合并,主要是设置每个菜单的MergeOrder,对于每个菜单的MergeOrder设置不同的值,从而达到合并后的效果。以下用表格说明:

主窗体MergeOrder
File(1) Window(10)
AddDocument( 100)
Exit(110)
子窗体MergeOrder
File(1) Format(5)
Load Document(105)

合并后的效果如下:

合并后的菜单

File(1) Format(5) Window(10)
AddDocument( 100)
Load Document(105)
Exit(110)



所以如果想在MDI子窗体上的菜单和主窗体上的菜单合并后,达到所预期的效果,就必须好好涉及它们之间的MergeOrder,大致如下:

1. 如果和主窗体原有的菜单列进行合并,首先把根菜单的MergeOrder设置与主窗体相应菜单一样的MergeOrder值,同时设置MenuItem的MergeType为MenuMerge.MergeItems,合并后在此列菜单中的位置,就看每个菜单的MergeOrder了。

2. 如果想在主窗体添加新的菜单列,MenuItem的MergeType为MenuMerge. Add,菜单列插入的位置,要看其MergeOrder了。

读书人网 >.NET

热点推荐