java - JEdi​​torPane 超链接 swing html

标签 java swing hyperlink jeditorpane

我很难让超链接在 JEditorPane 中工作。有人可以告诉我我在这里做错了什么吗?我希望能够单击链接和浏览器打开该页面。提前致谢。 :D

    bottomText.setText("<a href=\"http://www.yahoo.com\">Yahoo</a>");
    bottomText.setEditable(false);
    bottomText.setOpaque(false);
    bottomText.setEditorKit(JEditorPane.createEditorKitForContentType("text/html"));
    bottomText.addHyperlinkListener(new HyperlinkListener() {
        public void hyperlinkUpdate(HyperlinkEvent e) {
            if(e.getEventType() == HyperlinkEvent.EventType.ACTIVATED) {

            }
            if(Desktop.isDesktopSupported()) {
                try {
                    Desktop.getDesktop().browse(e.getURL().toURI());
                } catch (IOException e1) {
                    // TODO Auto-generated catch block
                    e1.printStackTrace();
                } catch (URISyntaxException e1) {
                    // TODO Auto-generated catch block
                    e1.printStackTrace();
                }
            }

        }

    });

最佳答案

哇,这比我还简单 :P

// Move this
//bottomText.setText("<a href=\"http://www.yahoo.com\">Yahoo</a>");
bottomText.setEditable(false);
bottomText.setOpaque(false);
bottomText.setEditorKit(JEditorPane.createEditorKitForContentType("text/html"))
// To Here
bottomText.setText("<a href=\"http://www.yahoo.com\">Yahoo</a>");

哦,等到用户在打开浏览器之前点击了链接,在我杀了你之前大约有 4 个窗口运行 ;)

点击更新

你快到了 ;)

bottomText.addHyperlinkListener(new HyperlinkListener() {
    public void hyperlinkUpdate(HyperlinkEvent e) {
        if (e.getEventType() == HyperlinkEvent.EventType.ACTIVATED) {
            if (Desktop.isDesktopSupported()) {
                try {
                    Desktop.getDesktop().browse(e.getURL().toURI());
                } catch (IOException e1) {
                    // TODO Auto-generated catch block
                    e1.printStackTrace();
                } catch (URISyntaxException e1) {
                    // TODO Auto-generated catch block
                    e1.printStackTrace();
                }
            }
        }
    }
});

关于java - JEdi​​torPane 超链接 swing html,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11753042/

相关文章:

java - 有没有办法从 Java 中的方法提供自动扫描器输入?

java - 当形状位于 JPanel 外部时自动滚动

python - 如何使用pyqt4在窗口中的网页上建立链接?

css - 在 Wordpress 中指示文本链接的更好方法

java - 运行 mvn 时,它会抛出 java home not Defined 错误

java - 了解 Java 中的语法

java - 使用 Java 在 Ubuntu 中创建目录时出错

java - 将 JPanel 置于 Controller 之上

JAVA JScrollPane 不显示

javascript - 将动态生成的 href 标签的值传递给 file_get_contents