注册 | 登录
收藏 | 帮助
热门文章
编辑推荐
相关文章  
Linux系统下的病毒发展及其分类
从Melissa到Zotob:Windows蠕虫1
用Norton Internet Security拦截
Linux比Windows更易受外星人入侵
避其锋芒——Linux操作系统入侵实
操作系统安全防范简述:Linux篇
Linux受攻击次数高于Windows
Linux中防御垃圾邮件的方法
安全配置Norton Security2004
RedHat Linux环境下防火墙配置初
您现在的位置: 顶尖设计 >> IT学院 >> 编程开发 >> Java >> 文章正文
Eclipse插件开发之添加简单的GUI元素
作者:佚名  来源:不详  点击:  更新:2006-12-19
简介:

编写Eclipse插件的方法很简单,你只需要编写一个应用程序,并把它"添加"到Eclipse上。但是与编写音乐类似,在能够 创 作一部著作之前,首先必须学习大量的相关知识。

本文将讨论少许几个简单的GUI元素:

· 工具条按钮

· 菜单项

· 对话框

为了使用这些元素,我们将稍微修改已有的插件,顺便编写一个可供使用的工具类。

扩展点(Extension Points)

我们不能随意地向Eclipse用户界面的任何地方添加窗口小部件,只能在 特殊的、指定的、有记载的位置添加。这些位置 被称为扩展点(extension points)。在基本的Eclipse安装中存在数以百计可供使用的扩展点。插件自身 也 可以发布新的扩展点。我们来看一看列表中的 扩展点。打开Invokatron项目(见天极网《Eclipse插件开发快速入门》 )中 的plugin.xml文件,进入"扩展 "(Extensions)属性页。"所有扩展"树列出了插件的不同的窗口部件,根据它们出现时所在的扩展点来分类。例如 Invokatron 编辑器位于编辑器 (org.eclipse.ui.editor)扩展点中。图1显示了这个属性页。

图 1:扩展页

现在请点击"添加"(ADD)按钮,出现了图2所示的列表。

图2:新增扩展向导,扩展列表

上下滚动这个列表可以看到很多可供使用的扩展点。 你 可能注意到了有两种类型的扩展点:带有扩展模板的(用加号标 识)和不带扩展模板的。大多数经常用到的扩展点都带有用于辅助开发扩展的模板。图2 中 选择的扩展点Action Set,带有一个叫做"Hello World"操作集的 模板。当你选择某个模板的时候,会出现简短的描述。"下一个"页面将询问模板使用的参 数 。

现在请关闭向导并返回到"扩展"属性页。选择"Invokatron编辑器"。在这个属性页中,你可能注意到了我们在向导 中 为 Invokatron编辑器输入的信息。正常的扩展需要一个唯一的标识符(ID字段)、一个供显示的名称(Name字段)和它所属的扩展点(Point字段)。 从模 板中建立的扩展(例如Invokatron编辑器)需要更多的参数。没有模板的扩展点也需要更多的信息,但是这些信息只能在文本编辑器中输入。

添加工具条按钮

现在我们已经了解了扩展点是什么,让我们来添加一个扩展吧 。我们首先添加的是一个工具条按钮。这个按钮将调用我 们前面建立的新的Invokatron向导。

添加工具条按钮有三个 步骤:

1.声明一个新扩展。

2.用特定的标记来扩充该声明。

3.编写操作委托类

1.声明一个新扩展

我们已经知 道怎样实现这个步骤了。简单地返回到扩展点下的plugin.xml编辑器。点击"添加"。工具条按钮在 org.eclipse.ui.actionSets扩展点下面。不要使用模板,直 接点击"完成"。输入下面一些内容:

· Id: NewInvokatronAction

· Name: New Invokatron Document Action

· Point: (使用默认值:org.eclipse.ui.actionSets)

返回plugin.xml属性页,Eclipse 给这个文件添加了新的代码片断。

2.用特定的标记 来扩充该声明

这个新扩展几 乎毫无内容。我们在下面添加一些标记(tag)。你知道可以使用哪些标记吗?你可以右 键点击"所有扩展" 树中的元素,选择"新增"菜单,会得到一个列表。 你也可以查看Eclipse文档。

现在我们看到自己可 以在<extension>标记内部添加一个<actionSet>标记。它可以包 含零个或多个<menu>标记, 后面跟着零个或多个<action>标记,还可以选择使用 <description>标记。但是其中最重要的标记是<action>。它可以 同时描述工具条按钮和菜单项 。>BR>下面是我们将添加的工具条按钮的XML代码 片断。其中的新代码是黑体的。我们在后面会剖析这段代码。

<extension id="NewInvokatronAction"

name="New Invokatron Document Action"

point="org.eclipse.ui.actionSets">

<actionSet id="invokatron.actionSet"

label="Invokatron Actions"

visible="true">

<action id="invokatron.wizard.RunWizardAction"

toolbarPath="org.eclipse.ui.workbench.file/new.ext"

icon="icons/InvokatronIcon16.gif"

tooltip="Starts the New Invokatron Document Wizard."

class="invokatron.wizard.RunWizardAction">

</action>

</actionSet>

</extension>

所有这些操作都可以在plugin.xml编 辑器中用图形化的方式来完成,但是我们查看XML以明确字段的完整文本内容。此处 的<actionSet>标记只含有一个操作(action)。操作表现为菜单中的 项或工具条中的按钮的对象。操作的属性实在太多了,你可以在在线文档中查阅。 其中最有趣的一些属性是:

· id:操 作的唯一标识符。可以用于在运行时引用操作。

· toolbarPath:放置工具条按钮的位置。

· icon:工具条按钮或菜单项左侧显示的图标。它是一个与开发目录 关联的16×16的GIF文件。请把 图片存放到 Invokatron\icons文件夹中。这个文件夹已经被包含到二进制建立路径中,因此该图标将放入插件的文档目录中 。

· tooltip:当鼠标停留在工具条按钮上的时候出现的文本内容。

· class:这些 操作的完整的合格的类名称。






  • 上一篇文章:
  • 下一篇文章:
  • 分享此文:该页面添加到 Mister Wong 添加到雅虎Yahoo!收藏 Add to:Del.icio.us Post to Furl Digg this 添加到Google书签 reddit spurl blogmarks 365Key 评论  收藏  分享  打印
     我来说两句
    姓名:       验证码:   
    主页: 
    评分: 1分 2分 3分 4分 5分
    本频道近期热评文章:
      关于我们 | 联系我们 | 站点地图 | 广告投放 | 友情链接 | 在线留言 | 版权申明
    版权所有 © 2004-2007 顶尖设计(bobd.cn)
    未经授权禁止转载,摘编,复制本站内容或建立镜像. 沪ICP备07504942号 
    网络110
    报警服务