我在coolbar中有一个菜单下拉动作。它有3个子项,组成一个无线电组。当用户选择其中一个选项时,我想更改酷吧中显示的图标。
我用Google搜索并看到我应该看一下: org.eclipse.ui.commands.ICommandService.refreshElements(String,Map) 和 org.eclipse.ui.commands.IElementUpdater
查看异常的信息可能是正确的。一个或两个小代码片段将非常出色。
提前致谢。
答案 0 :(得分:4)
好的,基本上如果你不想使用“自定义”控件,那么做什么就是让你的处理程序(链接到特定命令的处理程序)实现IElementUpdater。当显示或单击每个工具栏项时(即,如果用户在单选按钮上选择),则调用方法:updateElement(UIElement element,Map parameters)。 该元素有一个setIcon()方法,这就是我用来更改菜单下拉动作的图标。
答案 1 :(得分:3)
对Coolbar的每次更新都指向specialization of the WorkbenchWindowControlContribution
class。
这个bug 186800中有一些代码示例可能很有用。