- 1. webBrowser监听器,用于监听webBrowser的状态,在调用setURl或者setConetent后,马上调用exectescrip和getContentt可能异常,内容可能还没加载到浏览器里面。要在监听中等待加载完成,才能调用
webBrowser.addWebBrowserListener(new WebBrowserListener() {
public void downloadStarted(WebBrowserEvent event) {
updateStatusInfo("Loading started.");
}
public void downloadCompleted(WebBrowserEvent event) {
jBackButton.setEnabled(webBrowser.isBackEnabled());
jForwardButton.setEnabled(webBrowser.isForwardEnabled());
updateStatusInfo("Loading completed.");
URL currentUrl = webBrowser.getURL();
if (currentUrl != null) {
jAddressTextField.setText(currentUrl.toString());
}
}
public void downloadProgress(WebBrowserEvent event) {
// updateStatusInfo("Loading in progress...");
}
public void downloadError(WebBrowserEvent event) {
updateStatusInfo("Loading error.");
}
public void documentCompleted(WebBrowserEvent event) {
updateStatusInfo("Document loading completed.");
}
public void titleChange(WebBrowserEvent event) {
updateStatusInfo("Title of the browser window changed.");
}
public void statusTextChange(WebBrowserEvent event) {
// updateStatusInfo("Status text changed.");
}
public void windowClose(WebBrowserEvent event) {
updateStatusInfo("Closed by script.");
if(JOptionPane.YES_OPTION==JOptionPane.showConfirmDialog(
webBrowser,
"The webpage you are viewing is trying to close the window./n Do you want to close this window?",
"Warning",
JOptionPane.YES_NO_OPTION,
JOptionPane.QUESTION_MESSAGE))
{
System.exit(0);
}
}
});
2.tray添加java程序到任务栏中,通过点击tray设置Jframe是否显示,可以在tray中加入Jpopmenu设置弹出菜单