我在我的 javaFX webview 中添加了一个进度指示器。默认情况下,这将 google 页面作为加载页面。加载谷歌主页之前的进度指示器工作正常。但是当我访问谷歌搜索结果中的其他链接时,我希望进度指示器能够工作或显示。我在控制器类代码中的指示器仅适用于谷歌主页。请在下面找到代码片段供您参考。在此先感谢。
public class GoogleController implements Initializable {
@FXML
SplitPane sp;
@FXML
Label welcomeMsg1;
@FXML
Label welcomeMsg2;
@FXML
WebView webview;
@FXML
Label uname;
@FXML
Label status1;
@FXML
ProgressIndicator pi;
String url=null;
/**
* Initializes the controller class.
*/
@Override
public void initialize(URL url, ResourceBundle rb) {
// TODO
WebEngine webengine=webview.getEngine();
WebEngine webengine1=webview.getEngine();
webengine.load("http://www.google.com");
pi.progressProperty().bind(webengine.getLoadWorker().progressProperty());
webengine.getLoadWorker().stateProperty().addListener(
new ChangeListener<State>() {
public void changed(ObservableValue ov, State oldState, State newState) {
if (newState == State.SUCCEEDED) {
pi.setVisible(false);
status1.setText("");
} else {
}
}
});