我正在寻找在 Eclipse Preferences 页面中添加链接的方法。我很快找到了How to create a hyperlink in Eclipse plugin preferences page? 。然而该解决方案不适合
public class GradlePreferencePage extends FieldEditorPreferencePage implements IWorkbenchPreferencePage {
...
final Link link = new Link(getFieldEditorParent(), SWT.NONE);
link.setText("link");
link.setLayoutData(getFieldEditorParent().getLayout());
link.addSelectionListener(new SelectionAdapter() {
@Override
public void widgetSelected(final SelectionEvent event)
{
int style = IWorkbenchBrowserSupport.AS_EDITOR | IWorkbenchBrowserSupport.LOCATION_BAR | IWorkbenchBrowserSupport.NAVIGATION_BAR | IWorkbenchBrowserSupport.STATUS;
IWebBrowser browser;
try {
browser = WorkbenchBrowserSupport.getInstance().createBrowser(style, "NodeclipsePluginsListID", "NodeclipsePluginsList", "Nodeclipse Plugins List");
browser.openURL(new URL("http://www.nodeclipse.org/updates"));
} catch (PartInitException e) {
e.printStackTrace();
} catch (MalformedURLException e) {
e.printStackTrace();
}
}
});
但是我不能 addField(link);
作为
The method addField(FieldEditor) in the type FieldEditorPreferencePage is not applicable for the arguments (Link)
有没有办法在 FieldEditorPreferencePage
中添加链接?例如由多个部分(标签、链接、文本)组成 FieldEditor
?
最佳答案
您无需调用 addField
即可将普通控件添加到字段编辑器首选项页面。您拥有的代码就足够了。仅 FieldEditor
派生类需要 addField
。
更新:您的 setLayoutData
不正确,请使用以下内容:
link.setLayoutData(new GridData(SWT.FILL, SWT.TOP, false, false, 3, 1));
您可能需要根据页面的其余部分调整列数。
关于java - Eclipse 插件开发 - 如何在 FieldEditorPreferencePage 上添加超链接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22424993/