双桅渔船  
漂泊,没有终点
日历
<2006年1月>
25262728293031
1234567
891011121314
15161718192021
22232425262728
2930311234
统计
  • 随笔 - 5
  • 文章 - 0
  • 评论 - 3
  • 引用 - 0

导航

常用链接

留言簿(1)

随笔档案

搜索

  •  

最新评论

阅读排行榜

评论排行榜

 

这个好像有几种情形,想到三个就先写三个:
第一个是rcp中有默认的主菜单,如果你什么菜都不加它不会显示,但当你加的菜单和默认菜单有同名情况时,rcp会向这个名称的菜单里加入一些默认的选项。比如你要写自己的file菜单,那命名最好换成ifile或者其它,不然,命名成file,rcp不管你是否需要,都会往里面加入通常的file功能条(都是灰色的)。
第二个是通过代码里去除不用的菜单。

WorkbenchWindow window = (WorkbenchWindow)Workbench.getInstance().getActiveWorkbenchWindow();

MenuManager menuManager 
= window.getMenuManager();
IContributionItem[] items 
= menuManager.getItems();
   
ActionSetContributionItem element 
= (ActionSetContributionItem)items[1];

MenuManager fileMenuManager 
= (MenuManager)element.getInnerItem();
   
fileMenuManager.remove(
"action1");
第三个是用jdt的一些现成组件的时候,当focus转移到这些组件上会产生相应的菜单,而这些是你不想要的,可以这样处理,将那个组件类继承一下,使用你新生成的类,就可以去除不需要的菜单。
 在jdt的blugin里面给组件定义了viewAction的扩展,所以直接使用这些组件的时候会自动显示定义的菜单,通过继承就可以消除那些扩展点的影响。
posted on 2006-01-08 15:12 USTCEric 阅读(668) 评论(0)  编辑  收藏

只有注册用户登录后才能发表评论。


网站导航:
 
 
Copyright © USTCEric Powered by: 博客园 模板提供:沪江博客