关于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了。