最近学习了下如何通过org.eclipse.ui.actionSets来配置RCP中菜单的过程,总结一下。
首先,我们在工程中打开plugin.xml文件,选中Extensions这个选项卡。在org.eclipse.ui.views扩展点下新建一个view,id:com.travelsky.test.menu.view。name:testMenu。点击class创建该类,类名取为:ViewPart。代码如下:
import org.eclipse.swt.widgets.Composite;
public class ViewPart extends org.eclipse.ui.part.ViewPart {
private static final String ID = "com.travelsky.test.menu.view";
//注意,设置其ID
public ViewPart() {
// TODO Auto-generated constructor stub
}
@Override
public void createPartControl(Composite parent) {
// TODO Auto-generated method stub
}
@Override
public void setFocus() {
// TODO Auto-generated method stub
}
}
该创建过程上传附件的
图1:创建一个view
第二步,打开plugin.xml文件,选中Extensions这个选项卡。
添加扩展点:org.eclipse.ui.actionSets。
添加扩展点:org.eclipse.ui.actionSetPartAssociations。
第三部,
在actionSets扩展点中设置id="com.travelsky.test.menu.actionSet"
在actionSets扩展点中创建一个menu,设置vsible=true,设置ID为id="testMenu"
在menu下创建两个separator,用于对目录进行分组。取名分别为testGroup和testGroup2.
如果不需要分组,可以不用设置。
第四步,
在actionSets扩展点中建立三个action,取名称分别为目录测试1,目录测试3,录测试2。
对于目录测试1:设置其menubarPath为如下格式:
menu.ID/separator.ID
表明其放在menu.ID目录的separator.ID分组下。
这里设置为:menubarPath="testMenu/testGroup"表明在testMemu所在目录的testGroup组下面显示该项action。
同理,设置目录测试2: menubarPath="testMenu/testGroup2"
设置目录测试3:menubarPath="testMenu/testGroup2"
第五步,
在actionSetPartAssociations扩展点中,设置其targetID="com.travelsky.test.menu.actionSet"
在actionSetPartAssociations扩展点中,添加part,设置其id="com.travelsky.test.menu.view"。
以对应之前建立的view,将该菜单内容配置给此com.travelsky.test.menu.view。
好了,配置基本上完成了。此时的配置如附件
图2:配置界面一览
选中plugin.xml选项卡,会看见生成类似如下代码到其中:
<extension
point="org.eclipse.ui.actionSets">
<actionSet
id="com.travelsky.test.menu.actionSet"
label="Main"
visible="true">
<menu
id="testMenu"
label="目录测试">
<separator
name="testGroup">
</separator>
<separator
name="testGroup2">
</separator>
</menu>
<action
id="com.travelsky.test.menu.action1"
label="测试目录1"
menubarPath="testMenu/testGroup">
</action>
<action
id="com.travelsky.test.menu.action2"
label="测试目录3"
menubarPath="testMenu/testGroup2">
</action>
<action
id="com.travelsky.test.menu.action3"
label="测试目录2"
menubarPath="testMenu/testGroup2">
</action>
</actionSet>
</extension>
<extension
point="org.eclipse.ui.actionSetPartAssociations">
<actionSetPartAssociation
targetID="com.travelsky.test.menu.actionSet">
<part
id="com.travelsky.test.menu.view">
</part>
</actionSetPartAssociation>
</extension>
最后,将view添加到perspective中。运行测试工程。我们会看见如附件
图3:菜单配置运行效果所示
- 描述: 图1:创建一个view
- 大小: 66.2 KB
- 描述: 图2:配置界面一览
- 大小: 70.1 KB
- 描述: 图3:菜单配置运行效果
- 大小: 14.5 KB
分享到:
相关推荐
RCP程序中集成其他插件的配置方法RCP程序中集成其他插件的配置方法RCP程序中集成其他插件的配置方法
RCP常用方法,Java,gui开发绝对经典书
非常好的一本JAVA RCP入门实战的书,兼顾理论和实战。
RCP中文入门教程,RCP中文入门教程,RCP中文入门教程,RCP中文入门教程
代码demo和ppt介绍;用org.eclipse.ui.presentationFactories扩展点RCP自定义透视图切换按钮的右键菜单,去除Editor的右键菜单和关闭按钮;
RCP的Navigator例子源代码(包括修改默认的new右键菜单)
eclipse rcp project,主要是配置菜单, 编码生成菜单。与RCP 学习里面的内容对应。
创建一个rcp工程,模板使用有一个view的 step2.创建popupMenu step2_1.新建类Action1: step2_2.添加扩展点: 好的step2已经结束了,现在您可以运行一下程序,看看效果. 接下来将要进行的是,只有选中Three时...
java中RCP中使用JNI
RCP 常见的扩展点指南 RCP最精华的部分之一,详细分析了RCP如何建立扩展点的。
eclipse rcp应用系统开发方法与实战源代码.zip
RCP 菜单与工具栏小结
Eclipse RCP允许开发者使用eclipse结构风格设计弹性的可扩展的应用程序,可重用Eclipse中已存在的方法和编码模式。俗话说,万事开头难。Eclipse RCP入手可能会比较困难、费时。接下来我们将主要讲述如何让RCP工作. ...
clipse RCP允许开发者使用eclipse结构风格设计弹性的可扩展的应用程序,可重用Eclipse中已存在的方法和编码模式。俗话说,万事开头难。Eclipse RCP入手可能会比较困难、费时。接下来我们将主要讲述如何让RCP工作 ...
Eclipse RCP应用系统开发方法与实战 Eclipse RCP应用系统开发方法与实战 Eclipse RCP应用系统开发方法与实战
ECLIPSE+RCP应用系统开发方法与实战 PDF 比较清晰 有目录 本人在网上找了N久一直没找到,在taobao上买的。 所以收了5分,不要说我太黑哦。
Teamcenter软件RCP端右键菜单开发,工具栏菜单开发,代码为plugin.xml的配置。
RCP系统使用的弹出式日期控件,可切换上月下月,前一年后一年,可选择年、月