如何在表中将URL显示为可点击的URL并允许它们在默认浏览器中打开?
我有Java桌面应用程序,它在JTable
中显示一些信息,这些信息可能包含某些单元格中包含某些文本的URL。 如何只能点击URL并允许用户在默认浏览器中单击它,如果他/她点击它。
您可以在自定义TableCellEditor
使用此处显示的方法。 选择后,您可以browse()
URI。
附录:您可以将JEditorPane
用于编辑器组件,并使用addHyperlinkListener()
来侦听与该链接相关的事件。
JEditorPane jep = new JEditorPane(); jep.addHyperlinkListener(new HyperlinkListener() { @Override public void hyperlinkUpdate(HyperlinkEvent e) { HyperlinkEvent.EventType type = e.getEventType(); final URL url = e.getURL(); if (type == HyperlinkEvent.EventType.ENTERED) { // do desired highlighting } else if (type == HyperlinkEvent.EventType.ACTIVATED) { // open browser } } });
这里有一个关于将文本显示为超链接的示例: JTable Cell中的HyperLink