WEB开发网
开发学院软件开发Java Eclipse 插件开发 -- 深入理解菜单(Menu)功能... 阅读

Eclipse 插件开发 -- 深入理解菜单(Menu)功能及其扩展点

 2010-04-12 00:00:00 来源:WEB开发网   
核心提示: 例如,添加一个上下文菜单到 Problems 视图中,Eclipse 插件开发 -- 深入理解菜单(Menu)功能及其扩展点(6),其 locationURI 为:popup:org.eclipse.ui.views.ProblemView?after=additions,如果我们想让某个上下文

例如,添加一个上下文菜单到 Problems 视图中,其 locationURI 为:

popup:org.eclipse.ui.views.ProblemView?after=additions。

如果我们想让某个上下文菜单项出现在任何区域,则可以使用下面的 locationURI:

popup:org.eclipse.ui.popup.any?after=additions

2、上下文菜单(Actions 方式)

Actions 方式没有直接提供扩展点添加上下文菜单,但是我们可以通过编程的方式实现,如下代码清单 1 为 TreeViewer 添加上下文菜单,通过 IMenuManager 的 add 方法添加 actions。

清单 1. 通过 Actions 方式编程实现添加上下文菜单

 private void hookContextMenu() { 
  IMenuManager fMenuMgr = new MenuManager(“#PopupMenu”); 
  fMenuMgr.setRemoveAllWhenShown(true); 
  // 添加 Actions 
  fMenuMgr.add(action … ) 
  fMenuMgr.createContextMenu(treeViewer.getControl()); 
  treeViewer.getControl().setMenu(fMenu); 
  getSite().registerContextMenu(fMenuMgr, treeViewer); 
 } 

3、上下文菜单(popupMenus 方式)

通过 popupMenus 扩展点实现上下文菜单,需要设定 objectContribution 的 objectClass 属性把上下文菜单添加到相应的区域。

例如,如果我们想当用户点击 Eclipse 中的资源时,弹出的上下文菜单包括某个菜单项,我们可以设定 objectClass 属性为:

org.eclipse.core.resources.IResource

通过 Commands 方式创建菜单项

通过 Commands 方式创建菜单项,首先需要创建 Command,通过扩展点 org.eclipse.ui.commands,然后我们可以把这个 Command 放到任何区域,上一小节已经讲到,通过 org.eclipse.ui.menus 扩展点确定菜单创建的区域,最后通过扩展点 org.eclipse.ui.handlers 定义这个 command 的具体行为。

上一页  1 2 3 4 5 6 7 8 9 10  下一页

Tags:Eclipse 插件 开发

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接