如何在JtextPane中使图像链接工作?

时间:2013-04-28 09:58:05

标签: java swing jtextpane

我想在我的电脑上为jtextpane上的一行提供图像链接。 我将“text / html”ttype提供给jtextpane

 jTextPane1.setContentType("text/html");  

我写了这段代码给图片:

html text:

<img src=  file:/"+myimageplace+" alt=\"Click to Open Image\" width=\"30\" height=\"30\">

这适用于显示图像。

但是我想把这个图像转到这样的图像:

<a href=\"file:/"+myimageplace+">\"<img src=  file:/"+mytext+" alt=\"Click to Open Image\" width=\"30\" height=\"30\"></a>

但这不起作用?

我该怎么做? 感谢。

1 个答案:

答案 0 :(得分:1)

您需要有一个与链接点击相关的事件/链接处理程序才能生效。 即使你的渲染HTML没有特定的链接处理程序来处理点击,它也不会打开窗口。

我在这里引用:Hyperlink in JEditorPane

添加链接处理程序

默认情况下,点击链接不会执行任何操作;你需要一个HyperlinkListener来处理它们:

editor.addHyperlinkListener(new HyperlinkListener() {
    public void hyperlinkUpdate(HyperlinkEvent e) {
        if(e.getEventType() == HyperlinkEvent.EventType.ACTIVATED) {
           // Do something with e.getURL() here
        }
    }
});

如何启动浏览器来处理e.getURL()取决于您。如果您使用Java 6和支持的平台,一种方法是使用Desktop类:

if(Desktop.isDesktopSupported()) {
    Desktop.getDesktop().browse(e.getURL().toURI());
}