Java TrayDialog中的SWT帮助按钮
我有一个扩展TrayDialog的类,它有一个帮助按钮。我设定了以下条件:Java TrayDialog中的SWT帮助按钮,java,eclipse,dialog,swt,jface,Java,Eclipse,Dialog,Swt,Jface,我有一个扩展TrayDialog的类,它有一个帮助按钮。我设定了以下条件: setDialogHelpAvailable(true); setHelpAvailable(true); 我找不到应该如何实现左下角的帮助按钮。我试过了 @Override protected void buttonPressed(int buttonId) { super.buttonPressed(buttonId); if(buttonId == IDialogConstants.HELP_ID
setDialogHelpAvailable(true);
setHelpAvailable(true);
我找不到应该如何实现左下角的帮助按钮。我试过了
@Override
protected void buttonPressed(int buttonId) {
super.buttonPressed(buttonId);
if(buttonId == IDialogConstants.HELP_ID) {
System.out.println("Help requested");
}
}
但它不起作用。我已经看到了,但是我没有performHelp()方法,因为我不在向导中
我错过了什么?当按下“帮助”按钮时,感谢TrayDialog查找带有
SWT.help
侦听器的控件。它从当前关注的控件开始,并通过该控件的父控件向上移动,直到找到一个具有侦听器的控件(或耗尽控件)
您可以使用设置一个帮助侦听器,该侦听器连接到Eclipse帮助系统中的“帮助上下文”
PlatformUI.getWorkbench().getHelpSystem().setHelp(control, "context-id");
或者您可以编写自己的帮助侦听器。我也遇到了同样的问题,只需在我的一个控件中添加一个
帮助侦听器即可解决:
Composite area.addHelpListener(new HelpListener() {
@Override public void helpRequested(HelpEvent e) {
System.out.println("This is the help info");
}
});
并将以下内容添加到我的构造函数中:
setDialogHelpAvailable(true);