Java GUI对话框超链接

时间:2015-04-22 21:46:00

标签: java swing hyperlink popup

为我的班级工作项目。我正在尝试将一个可点击的超链接添加到弹出对话框(在java swing gui中),用户可以单击该超链接将它们带到网页。目前,我发现弹出框超链接可以单独使用,但我无法用于附加到我的对话框。有没有办法做这样的事情?我使用二叉搜索树来执行数据,是否可以将它添加到节点,toString和addNode方法,以便在带有可点击超链接的对话框中显示它?我正在使用的代码如下:

private void HydrogenActionPerformed(java.awt.event.ActionEvent evt) {                                         

JOptionPane.showMessageDialog( null, (new1.theTree.findNode(1)
        + 
JPanel p = new JPanel();

JLabel link = new JLabel("http://en.wikipedia.org/wiki/"+"Hydrogen");
link.setCursor(Cursor.getPredefinedCursor(Cursor.HAND_CURSOR));
link.addMouseListener(new MouseAdapter() 
   {
    public void mouseClicked(MouseEvent e) 
    {
        if (e.getClickCount() > 0) 
        {
            if (Desktop.isDesktopSupported()) 
            {
                  Desktop desktop = Desktop.getDesktop();
                  try 
                  {
                      String element = "Hydrogen";
                      URI uri = new URI("http://en.wikipedia.org/wiki/"+element);
                      desktop.browse(uri);
                  } 
                  catch (IOException ex) 
                  {
                      ex.printStackTrace();
                  } 
                  catch (URISyntaxException ex) 
                  {
                      ex.printStackTrace();
                  }
            }
        }
    }
  });

p.add(联系);    getContentPane()。add(BorderLayout.NORTH,p);));

它没有运作,我不知所措。我对任何想法持开放态度。 感谢。

1 个答案:

答案 0 :(得分:1)

new1.theTree.findNode(1)的结果放在JLabel

将此标签和超链接标签添加到相同的JPanel,无论您想要的是什么

通过JOptionPane参数Object

将此引用的引用传递给JOptionPane.showMessageDialog(Component, Object)