0
Я хочу запустить задачу, и в то же время я хочу прогресс. Я нашел, как делать оба потока одновременно, но теперь я хочу, чтобы Stage с индикатором прогресса закрылся, когда задача завершена (когда getTeller() == 1380) и откройте новый этап. Может кто-нибудь мне помочь? Это то, что у меня уже есть (он показывает индикатор прогресса, но индикатор прогресса никогда не закрывается).открытый этап после завершения задачи JavaFX
progressStage = new Stage();
progressStage.initModality(Modality.APPLICATION_MODAL);
VBox root6 = new VBox(2);
task = new Task<Integer>() {
@Override
public Integer call() throws Exception{
n = new Netwerk(bestand);//this is where the count starts to 1380
if(n.getTeller()==1380){
progressStage.close();
SaveStage = new Stage();
SaveStage.initModality(Modality.APPLICATION_MODAL);
...//here I do the layout part
}
return null;
}
};
pb = new ProgressBar();
pb.progressProperty().bind(task.progressProperty());
new Thread(task).start();
Label lg = new Label("Even geduld...");
root6.getChildren().addAll(lg,pb);
Scene scene5 = new Scene(root6,300,200);
progressStage.setTitle("TreinSysteem");
progressStage.setResizable(false);
progressStage.setScene(scene5);
progressStage.show();
, но тогда у меня есть два раза возврат нуль, разве это не проблема? – MiLo
@MiLo Поскольку вы не используете 'Task' для вычисления определенного значения, это не имеет значения. – eckig
и где я пишу task.setOnSucceeded()? Нужно ли быть в вызове()? – MiLo