当前位置: 首页 > 面试题库 >

Swing JDialog / JTextPane和HTML链接

汤枫涟
2023-03-14
问题内容

JTextPane在JDialog 的秋千内使用html页面。
在html中,<a href="mailto:email@adress.com">John</a>
当鼠标移至链接时,可以通过浏览器查看网页mailto
当我按下链接时,出现错误“未安装默认邮件客户端”,但是我猜这是由于在我的PC中没有配置Outlook或其他程序。
当从我的Swing应用程序中打开JDialog时,我看到John突出显示为链接,但是当我按下链接时,什么也没有发生。
我原本希望得到与浏览器相同的错误消息。
所以我的问题是可以通过Swing应用程序打开链接吗?

谢谢


问题答案:

工具提示(显示目标超链接地址)或按动操作都不会自动发生,您必须对其进行编码:对于第一个,请向ToolTipManager注册窗格,对于第二个,请注册HyperlinkListener,例如:

    final JEditorPane pane = new JEditorPane("http://swingx.java.net");
    pane.setEditable(false);
    ToolTipManager.sharedInstance().registerComponent(pane);

    HyperlinkListener l = new HyperlinkListener() {
        @Override
        public void hyperlinkUpdate(HyperlinkEvent e) {
            if (HyperlinkEvent.EventType.ACTIVATED == e.getEventType()) {
                try {
                    pane.setPage(e.getURL());
                } catch (IOException e1) {
                    e1.printStackTrace();
                }
            }

        }

    };
    pane.addHyperlinkListener(l);

该示例是关于在同一窗格中打开页面。如果要激活默认的浏览器/邮件客户端,请要求桌面(jdk1.6的新手)为您完成此操作



 类似资料:
  • 问题内容: 我可以解析JTextPane的内容,而不会遇到HTML中的任何问题: 这导致 你好! 但是每当我尝试将字符串附加到textPane时,使用 (如该问题所示),我的输出是 你好! (不带空格)-跳过html格式。 如何在我的JTextPane对象上附加一个字符串,并保持添加部分的HTML格式? 问题答案: 使用例如 要么 如果要插入段落/表格或其他分支元素,则使用该方法

  • 主要内容:尝试一下 - 实例,HTML 超链接(链接),HTML 链接语法,实例,HTML 链接 - target 属性,实例,HTML 链接- id 属性,实例,基本的注意事项 - 有用的提示,更多实例,HTML 链接标签HTML 使用超级链接与网络上的另一个文档相连。几乎可以在所有的网页中找到链接。点击链接可以从一张页面跳转到另一张页面。 尝试一下 - 实例 HTML 链接 如何在HTML文档中创建链接。 (可以在本页底端找到更多实例) HTML 超链接(链接) HTML使用标签 <a>来设

  • HTML 使用超级链接与网络上的另一个文档相连。几乎可以在所有的网页中找到链接。点击链接可以从一张页面跳转到另一张页面。 - 实例 HTML 链接- id 属性 id属性可用于创建在一个HTML文档书签标记。 提示: 书签是不以任何特殊的方式显示,在HTML文档中是不显示的,所以对于读者来说是隐藏的。 实例 在HTML文档中插入ID:<a id="tips">有用的提示部分</a> 在HTML文档

  • 我试图将CSS/HTML表“追加”到JTextPane中。 当我这样做的时候:像这样setText: 我得到了想要的结果[完美!]: null 原始css字符串如下: table.imageTable{font-family:verdana,arial,sans-serif;font-size:11px;color:#333333;border-width:1px;border-color:#99

  • 链接 是HTML的基础元素,因为Web的设计初衷就是想把一组文档彼此链接起来组成信息分享网络。 HTML的 超文本(HyperText) 部分定义了链接的类型即:超文本链接(hypertext links), 也就是 超链接(hyperlinks)。 在HTML中,链接是内联元素,使用 <a> 标签。 href(hypertext reference) 属性用来定义链接的目标地址(当点击时跳转或新

  • 我有一个9x9面板,它是每个面板都有一个JLabel,所以 我试过: 但是,我发现您很可能不能将“UndoableEditListener”添加到JLabels中。(对吗?) 我看到了一些可以将“UndoableEditListener”添加到JTextPane的示例,所以我想也许我可以创建一个JTextPane窗格[9][9],并将一个textpane添加到每个JLabel(添加到JPanel中