eclipse rcp开发过程中遇到的几个细节问题

dongle2001 2009-01-13 01:54:34
1. 如何将使用代码创建的菜单显示在使用扩展点创建的菜单的后面。

2. 使用扩展点创建工具栏按钮的时候,如何让按钮能够同时显示文字和图标。

3. 使用透视图的时候,第一次点击切换按钮的时候,弹出的下拉菜单只有“其他”的选项,如何让第一次点击切换按钮的时候,下拉菜单里就显示所有的透视图选项。
...全文
148 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
ozzy_003 2009-01-19
  • 打赏
  • 举报
回复
学习!!!帮顶!!!
MT502 2009-01-13
  • 打赏
  • 举报
回复
1.只要拿到IMenuManager,用appendToGroup()加到最后就行
xustar603 2009-01-13
  • 打赏
  • 举报
回复
1、将使用代码创建的菜单显示在使用扩展点创建的菜单的后面可以看作就是将扩展点创建的菜单显示在代码创建的菜单的后面,可能是代码创建在先所以后面这样想比较合适,我试过在不同插件之间的扩展点创建的菜单之间的排序我想道理差不多,建议看一下GroupMarker这个东西,扩展点创建的菜单用它来设置menupath,我想代码创建的也可以实现,你试下看。
2、这个好象是不支持,不过如果你不要那种toolbar鼠标放上去的效果可以用继承ControlContribution这个类在createControl方法里面加一个button,lable之类的。还有一种可能我觉得也可以实现,就是你说的效果应该是和Perspective的效果一样,我大致看了一下可能是用GC重画的,看一下PerspectiveBarContributionItem这个类的源码我想会有帮助的,下面的3上面有这个类的使用。
3、用代码这样做就可以了,只是一个例子你可以扩展一下。可以参考开源工程mywork
public void postStartup() {
IWorkbenchWindow activeWorkbenchWindow = PlatformUI.getWorkbench().getActiveWorkbenchWindow();
//设置同时显示多个透视图标
PerspectiveBarManager barManager=((WorkbenchWindow)activeWorkbenchWindow).getPerspectiveBar();
if(barManager != null){
String name="perspective1";
IPerspectiveDescriptor perspective = WorkbenchPlugin.getDefault().getPerspectiveRegistry().findPerspectiveWithId(name);
if(perspective != null){
PerspectiveBarContributionItem item=new PerspectiveBarContributionItem(perspective,activeWorkbenchWindow.getActivePage());
barManager.addItem(item);
}
}
}


只是一点建议,给你做参考不能实现不要骂我啊!
zhangzb717 2009-01-13
  • 打赏
  • 举报
回复
up

58,454

社区成员

发帖
与我相关
我的任务
社区描述
Java Eclipse
社区管理员
  • Eclipse
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧