我正在进行登录屏幕,我想在进行用户身份验证过程时显示进度指示器。 我正在做这样的事情。
// Handler for Button[fx:id="login"] onAction
public void handleLogin(ActionEvent event) {
// Show loading indicator
showLoadingImg();
// User authentication
String userName = user.getText();
String password = psw.getText();
OrdLogin ord = new OrdLogin();
ord.setUserName(userName);
ord.setPassword(password);
ord.run();
Authentication auth = orden.getInfoAutenticacion();
if(auth == null){
// Remove the loading indicator
contProgress.getChildren().remove(1);
// Show an error message
msgError.setText("Incorrect password/user");
msgError.setPrefHeight(Region.USE_COMPUTED_SIZE);
} else {
// login successful!
...
}
}
private void showLoadingImg() {
// Show loading indicator
ProgressIndicator progress = new ProgressIndicator();
contProgress.getChildren().add(progress);
}
如果我在initialize方法中运行showLoadingImg(),指示器会正确显示,但是当我在handleLogin中执行showLoadingImg()时,指示器不会显示。 有线索吗?
答案 0 :(得分:0)
如果auth为null,则从contProgress容器中删除进度指示器。您是否通过软件进行了调试,看看是否发生了这种情况?