javafx では、GUI プロセスは別のスレッドで実行されます。FX スレッドではなくインジケーターが FX 要素であるため、サービスとタスクを使用してバックグラウンド スレッドに進行状況インジケーターを配置することはできません。javafxで複数のGUIスレッドを作成することは可能ですか?
または、他の GUI 要素が読み込まれているときに進行状況インジケーターを回転させ続ける別の方法はありますか? 現在、ペインがロードされるまでローリングを開始し、スタックします。
@FXML
public void budgetShow(ActionEvent event) {
    progressIndicator = new ProgressIndicator(-1.0);
    rootPane.getChildren().add(progressIndicator);
    progressIndicator.setVisible(true);
    progressIndicator.toFront();
    threadBudgetShow().start();
}
public Service<Void> threadBudgetShow() {
Service<Void> service = new Service<Void>() {
    @Override
    protected Task<Void> createTask() {
        return new Task<Void>() {
            @Override
            protected Void call() throws Exception {
                // Background Thread operations.                    
                final CountDownLatch latch = new CountDownLatch(1);
                Platform.runLater(new Runnable() {
                    @Override
                    public void run() {
                        try {
                            // FX Thread opeartions.
                            // budgetAnchorPane - reload.
                            if (budgetAnchorPane == null || !budgetAnchorPane.isVisible()) {
                                budgetAnchorPane = new BudgetAnchorPane();
                                rootPane.getChildren().add(budgetAnchorPane);
                                budgetAnchorPane.setVisible(true);
                                budgetAnchorPane.getChildren().remove(budgetAnchorPane.budgetTypeComboBox);
                                budgetAnchorPane.budgetTypeComboBox = new BudgetTypeCombobox();
                                budgetAnchorPane.getChildren().add(budgetAnchorPane.budgetTypeComboBox);
                            }
                        } finally {
                            rootPane.getChildren().remove(progressIndicator);
                            latch.countDown();
                        }
                    }
                });
                latch.await();
                // Other background Thread operations.
                return null;
            }
        };
    }
};
return service;
}
    