使用方法setToolTip()在中更改后,操作上的java Keybinding工具提示消失
我在java类中定义了一个动作,并在插件中进行了键绑定和绑定。xml文件。当我第一次启动我的应用程序时,我在tooltip中看到了我的keybinding(假设是这样的),但在使用setToolTip(字符串tooltip)更改tooltip后,按钮绑定从工具栏操作按钮中消失,但keybinding仍然有效。如何再次显示它,或者如何获取操作的特定键绑定,因为getAccelerator()方法返回0。 这是我的动作类代码
public class SampleAction extends DiagramAction{
public static final String ID = "sampleFunction";
private void initData() {
setId(ID);
setText(Messages.cmd_AddBranchAction_text);
setToolTipText(Messages.cmd_AddBranchAction_desc);
}
@Override
public void refresh() {
super.refresh();
//checks if button in toolbar is enabled
boolean isEnabled = isEnabled();
if(isEnabled) {
setToolTipText("Do something");
} else {
setToolTipText("Node not selected, select a node");
}
}
}
这就是它在插件中的定义。xml
<key
commandId="com.sample.sampleFunction"
contextId="org.eclipse.ui.context.window"
schemeId="org.eclipse.ui.defaultAcceleratorConfiguration"
sequence="M1+A" />
# 1 楼答案
您可以使用
IBindingService
获取命令键绑定的文本:在视图或编辑器中,这将获得绑定服务:
其他地方你可以使用