我是Java和JavaFX的新手,所以如果我在这里提出错误的问题,请耐心等待。
我正在尝试将preloader Scene添加到我构建的应用程序中:我可以使用下面的代码添加预加载器。它是默认的预加载器,看起来非常基本。所以,这是我的问题。 1)如何添加百分比进度状态而不是进度条。 2)是否可以在FXML场景之上加载此进度条
Preloader
public class JavaFXPreloader3 extends Preloader {
ProgressBar bar;
Stage stage;
private Scene createPreloaderScene() throws IOException {
Parent root = FXMLLoader.load(getClass().getResource("FXML.fxml"));
ProgressIndicator pi = new ProgressIndicator();
BorderPane p = new BorderPane();
p.setCenter(pi);
return new Scene(p, 300, 150);
}
@Override
public void start(Stage stage) throws Exception {
this.stage = stage;
stage.setScene(createPreloaderScene());
stage.show();
}
@Override
public void handleStateChangeNotification(StateChangeNotification scn) {
if (scn.getType() == StateChangeNotification.Type.BEFORE_START) {
stage.hide();
}
}
@Override
public void handleProgressNotification(ProgressNotification pn) {
bar.setProgress(pn.getProgress());
}
}
如何返回根场景而不是包含进度指示器的BorderPane p:
ProgressIndicator pi = new ProgressIndicator();
BorderPane p = new BorderPane();
p.setCenter(pi);
return new Scene(p, 300, 150);
答案 0 :(得分:0)
这是一个用于创建PreLoader的优秀教程。