0
我想運行一個任務,同時我想要一個進度條。我發現如何在同一時間執行兩個線程,但是現在我希望當任務完成時(關閉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();
但後來我有兩次返回nul,這不是一個問題嗎? – MiLo
@MiLo由於您沒有使用「任務」來計算特定的值,因此無關緊要。 – eckig
和我在哪裏寫task.setOnSucceeded()?它是否需要在通話中()? – MiLo