eclipse的菜单menu、工具栏toolbar乃至视图的上下文菜单contextmenu都是使用Action或Command实现的。
Action即是
<extension point="org.eclipse.ui.actionSets"> <actionSet id="test.my.actionSet" label="test.my.actionSet" visible="true"> <menu id="test.my.menu" label="我的Menu"> <separator name="test.sp"> </separator> </menu> <action class="test.my.TestAction" id="test.my.action" label="我的Action" menubarPath="test.my.menu/test.sp" style="push"> </action> </actionSet> </extension>
在上述扩展配置中,我们注册了一个ActionSet,为该ActionSet添加了一个Menu,一个Action,为Menu添加了一个Seperator。
然后将Action的menubarPath设置为[Menu ID]/[Sperarot ID]
2、在自定义的菜单栏里添加一个子菜单
<extension point="org.eclipse.ui.actionSets"> <actionSet id="test.my.actionSet" label="test.my.actionSet" visible="true"> <menu id="test.my.menu" label="我的菜单"> <separator name="test.sp"> </separator> </menu> <menu id="test.my.submenu" label="我的子菜单" path="test.my.menu/test.sp"> </menu> <action class="test.my.TestAction" id="test.my.action" label="我的Action" menubarPath="test.my.menu/test.my.submenu/additions" style="push"> </action> </actionSet> </extension>
插入子菜单的配置和插入菜单项的配置是一样的,为子菜单添加子菜单项则需要知道菜单的ID,子菜单的ID。
在Action配置的menubarPath上填写:[Menu ID]/[SubMenu ID]/additions
即可。效果如下图所示:
<extension point="org.eclipse.ui.actionSets"> <actionSet id="test.my.actionSet" label="test.my.actionSet" visible="true"> <action class="test.my.TestAction" id="test.my.action" label="我的Action" menubarPath="file/new/additions" style="push"> </action> </actionSet> </extension>
效果如图所示:
RCP:利用actionSet在菜单(menu)里添加内容,布布扣,bubuko.com
原文:http://www.cnblogs.com/anrainie/p/3586454.html