在简单Java程序中从JButton打开URL?
你好,社区:), 所以我是一个真正的java新手,对吗?我似乎无法从我的链接GUI中获取要打开的URL。目前,它只显示字段值 以下是我的handler.java代码:在简单Java程序中从JButton打开URL?,java,swing,hyperlink,awt,jbutton,Java,Swing,Hyperlink,Awt,Jbutton,你好,社区:), 所以我是一个真正的java新手,对吗?我似乎无法从我的链接GUI中获取要打开的URL。目前,它只显示字段值 以下是我的handler.java代码: google = new JButton("Google"); google.setToolTipText("Open Google"); add(google); 我希望它打开一个URL,而不是显示字段值。这是我的actionlistener代码: private class HandlerClass implemen
google = new JButton("Google");
google.setToolTipText("Open Google");
add(google);
我希望它打开一个URL,而不是显示字段值。这是我的actionlistener代码:
private class HandlerClass implements ActionListener {
public void actionPerformed(ActionEvent event) {
JOptionPane.showMessageDialog(null, String.format("%s", event.getActionCommand()));
}
}
如果可能的话,我能得到一些帮助吗?:)谢谢请参阅
我收到一个错误,无法从类型桌面对非静态方法浏览(URI)进行静态引用
不,当您尝试调用类上的实例方法时,会发生这种情况。您需要一个桌面
对象
URI uri = new URI("http://google.com/");
Desktop dt = Desktop.getDesktop();
dt.browse(uri.toURL());
这可能对其他人有用。安德鲁·汤普森的答案几乎是正确的
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。
uriurl=newuri(“http://google.com/"); 桌面浏览(url)
我收到一个错误,无法从类型Desktop对非静态方法browse(URI)进行静态引用
检索系统的桌面对象:public static Desktop getDesktop()
请阅读答案中链接的API。@Andrew Thompson,我使用了您的代码段,但现在它显示此错误:方法browse(URI)在类型中,桌面不适用于参数(URL)
@andrewhompson这是在我不知道SO的礼仪时发生的。经过这么长时间,我已经接受了你的回答