Как я могу создать гиперссылку в диалоговом окне JFace, которая при нажатии открывает ссылку в веб-браузере по умолчанию. Полный пример был бы полезен. Я знаю, что есть пакет org.eclipse.jface.text.hyperlink
, но я не могу найти подходящий пример.
Как добавить гиперссылку в JFace Dialog
Ответ 1
Запускаете ли вы приложение RCP?
Если это так, то следующий код откроет вашу ссылку в браузере ОС по умолчанию:
// 'parent' is assumed to be an SWT composite
Link link = new Link(parent, SWT.NONE);
String message = "This is a link to <a href=\"www.google.com\">Google</a>";
link.setText(message);
link.setSize(400, 100);
link.addSelectionListener(new SelectionAdapter(){
@Override
public void widgetSelected(SelectionEvent e) {
System.out.println("You have selected: "+e.text);
try {
// Open default external browser
PlatformUI.getWorkbench().getBrowserSupport().getExternalBrowser().openURL(new URL(e.text));
}
catch (PartInitException ex) {
// TODO Auto-generated catch block
ex.printStackTrace();
}
catch (MalformedURLException ex) {
// TODO Auto-generated catch block
ex.printStackTrace();
}
}
});
Вышеприведенное предполагает, что вы не хотите сканировать существующий текст для гиперссылок, но просто хотите создать его программно. Если требуется первое, вам нужно будет использовать API из текстовых пакетов JFace и т.п.