0

你好社区:),所以我是一个真正的java新手,对吧?我似乎无法从我的 LINK GUI 中打开 URL。目前,它只显示字段值。

这是我的 handler.java 代码:

google = new JButton("Google");
google.setToolTipText("Open Google");
add(google);

我希望它打开一个 URL 而不是显示字段值。这是我的动作监听器代码:

    private class HandlerClass implements ActionListener {

    public void actionPerformed(ActionEvent event) {

        JOptionPane.showMessageDialog(null, String.format("%s", event.getActionCommand()));

    }

}

如果这是可能的,我可以得到一些帮助吗?:) 谢谢

4

2 回答 2

5

Desktop.browse(URI)

我得到一个错误,Cannot make a static reference to the non-static method browse(URI) from the type Desktop

不,当您尝试在类上调用实例方法时会发生这种情况。你需要一个Desktop对象。

URI uri = new URI("http://google.com/");
Desktop dt = Desktop.getDesktop();
dt.browse(uri.toURL());
于 2012-04-06T00:07:30.333 回答
2

这可能对其他人有用。安德鲁汤普森的答案几乎就在那里。

try {

     String url ="http://www.stackoverflow.com";

     Desktop dt = Desktop.getDesktop();
     URI uri = new URI(url);
     dt.browse(uri.resolve(uri));


 } catch (URISyntaxException ex) {
     Logger.getLogger(Setting.class.getName()).log(Level.SEVERE, null, ex);
 } catch (IOException ex) {
     Logger.getLogger(Setting.class.getName()).log(Level.SEVERE, null, ex);
 }

上面的代码需要用 try catch 块包围,其中包括 URISyntaxException 和 IOException。

于 2012-08-31T19:48:14.227 回答