可能重复:
Getting java gui to open a webpage in web browser - 这完全不重复。我希望能够在浏览器中引用选项卡,而不仅仅是启动浏览器。
我有一个桌面应用程序,其中包含一个操作按钮,可以打开一个带有特定URL的新浏览器。每次按下按钮,它都会打开一个新的窗口/标签。我希望它刷新窗口/选项卡,如果它已经打开并且URL是相同的,而不是总是打开一个新的。启动初始窗口的代码非常简单:
final String errMsg = "Error attempting to launch web browser";
String osName = System.getProperty("os.name");
try{
if (osName.startsWith("Windows"))
Runtime.getRuntime().exec( "rundll32 url.dll,FileProtocolHandler " + "www.stackoverflow.com");
}catch(Exception e){
JOptionPane.showMessageDialog(null, errMsg + "\n" + e.toString());
}
我想也许我可以命名窗口/标签,所以当代码启动时,它会尝试查找名称并在存在时刷新它。但我遇到麻烦找到这样的解决方案。另外,我目前的做法是否可以接受?
答案 0 :(得分:0)
将Web服务器组件添加到您的应用程序中。然后启动一个浏览器,指向您的网络服务器生成的页面,并在点击按钮时使用AJAX刷新浏览器内容。
答案 1 :(得分:0)
您可以将此作为基础:
Getting java gui to open a webpage in web browser
以非特定于os的方式打开浏览器。
它可能无法为您提供对浏览器的控制级别。
您是否考虑过使用JeditorPane或者您是否需要额外的javascript支持,包括javafx webview(基于webkit): Integrating JavaFX 2.0 WebView into a Swing Java SE 6 Application