zoukankan      html  css  js  c++  java
  • eclipse 插件编写(二)

    上篇文章简单写了下怎么新建一个eclipse插件工程,这次写一下怎么在上次的工程中添加几个菜单,如菜单栏菜单、工具栏菜单、右键菜单等。

    创建一个完成的菜单需要了解三个扩展点,即menus、commands、handlers,其中menus为菜单的扩展点,在引入菜单扩展点后,添加一个menu即添加了一个菜单;commands为行为扩展点,即声明一个行为操作,如:吃饭、跑步等,handlers为具体的行为操作扩展点,吃饭跑步的具体实施。一个menu与一个command相关联,一个command与一个handler相关联。

    通过PDE插件打开上次创建项目的plugin.xml文件,打开 Extensions 标签页,如图:

    image

     

    创建Command

    点击Add按钮

    image

    引入commands扩展点,在扩展点上右键新建一个command:

    image

    设置command相关信息

    image

    其他的信息可以先不填写,如要了解更多,Google一下吧,command创建到这里基本上完成了。

    创建menu

    点击Add按钮

    image

    引入了一个menus扩展点,添加完扩展点后,在扩展点上面右键添加一个menuContribution

    image

    设置菜单类型及位置

    image

    设置菜单类型及位置时通过uri参数拼接进行配置,其中popup为弹出菜单类型,也可以为menu、toolbar分别为主菜单与工具栏菜单,org.eclipse.ui.popup.any 为菜单显示视图位置,这儿的配置为可以在任何视图显示;after=additions为菜单显示位置

    在menuContribution右键添加一个command,将上面创建的command放置到菜单中:

    image

    配置command的相关信息

    image

    label:菜单显示的文字,如果没有则使用对应command的名字

    id:为menu的唯一标识,

    mnemonic:菜单的快捷键,按住Alt+F为本菜单的快捷键

    icon:菜单的图标

    tooltip:当鼠标移入菜单项上面时的提示文字

    commandId:对应上面创建的command

    创建Handler

    handler对应的是行为的实际执行者,如:command对应java语言中的接口,handler对应实现类。

    首先创建一个handler执行类,新建一个java类,继承自AbstractHandler:

    package com.yunzaipiao.menu.handler;
    
    
    
    import org.eclipse.core.commands.AbstractHandler;
    
    import org.eclipse.core.commands.ExecutionEvent;
    
    import org.eclipse.core.commands.ExecutionException;
    
    import org.eclipse.jface.dialogs.MessageDialog;
    
    
    
    public class SampleHandler extends AbstractHandler {
    
    
    
    	public SampleHandler() {
    
    		// TODO Auto-generated constructor stub
    
    	}
    
    
    
    	@Override
    
    	public Object execute(ExecutionEvent event) throws ExecutionException {
    
    		MessageDialog.openInformation(
    
    				null,
    
    				"测试插件",
    
    				"测试右键弹出菜单成功!");
    
    		return null;
    
    	}
    
    
    
    }
    

    创建完实现类后,引入handler扩展点,将扩展点与改实现类关联起来。打开刚才添加menu与command标签页,点击Add:

    image

    新增一个handler,选中后配置信息:

    image

    commandId:对应上面创建的command

    class:对应执行类,刚刚创建的执行类

    运行一下,看看效果吧:

    在插件项目上右键 Run as > Eclipse Application,在打开的新的eclipse 中随便找个地方,点击右键,出现菜单

    image

    点击菜单会弹出一个提示框

    image

  • 相关阅读:
    Linux and the Unix Philosophy(6)
    在docker环境下部署kafka集群
    Docker学习笔记1-docker介绍及安装
    nginx安装
    centos7下NFS配置
    搭建kafka集群
    nexus开机启动
    java跨库事务Atomikos
    mongodb数据库还原
    Linux下运行jar
  • 原文地址:https://www.cnblogs.com/wuhh123/p/10337096.html
Copyright © 2011-2022 走看看