编程语言
首页 > 编程语言> > 如何在包含java中的mailto链接的textarea中添加行?

如何在包含java中的mailto链接的textarea中添加行?

作者:互联网

我需要在包含mailto链接的swing中向textarea添加行,并点击它应该打开电子邮件应用程序.

我该怎么做?

解决方法:

正如我在评论中建议的那样你应该尝试使用JTextPane而不是JTextArea.

为了使超链接工作,您需要做以下事情:

> make textPane editable = false.
>为其添加HyperlinkListener,以便您可以监视链接激活事件.

快速演示如下:

    final JTextPane textPane = new JTextPane();
    textPane.setEditable(false);
    textPane.setContentType("text/html");
    textPane.setText("File not found please contact:<a href='mailto:michael@uml.com'>e-mail to</a> or call 9639");
    textPane.addHyperlinkListener(new HyperlinkListener() {
        @Override
        public void hyperlinkUpdate(HyperlinkEvent e) {
            if(e.getEventType() == HyperlinkEvent.EventType.ACTIVATED) {
                System.out.println(e.getURL());
                // write your logic here to process mailTo link.
            }
        }
    });

通过java打开邮件客户端的示例:

try {
    Desktop.getDesktop().mail(new URI(e.getURL() + ""));
} catch (IOException e1) {
    e1.printStackTrace();
} catch (URISyntaxException e1) {
    e1.printStackTrace();
}

标签:mailto,java,hyperlink,swing,textarea
来源: https://codeday.me/bug/20190826/1730854.html