Vermeidung von Not on FX-Anwendungsthread; currentThread = JavaFX-Anwendungsthreadfehler?

Die folgenden Codefragmente geben mir einen FehlerNot on FX application thread; currentThread=JavaFX Application ThreadDiese Anwendung hat in Java 1.7 einwandfrei funktioniert, aber als ich sie auf fx8 verschoben habe, wird jetzt ein Fehler angezeigt. Wenn ich die Anwendung bei meinem ersten Versuch starte, funktioniert sie wie vorgesehen. Nach dem Schließen der Bühne und dem erneuten Öffnen funktioniert sie jedoch nicht.

Der Fehler ist auch nicht eindeutigNot On fx application thread and current thread- javafx application thread.Was bedeutete es, nicht im FX-Anwendungsthread zu sein, wenn der aktuelle Thread ein FX-Anwendungsthread ist?

      progressDialog = createProgressDialog(service);
        progressDialog.show();
        progressDialog.setOnCloseRequest(new EventHandler<WindowEvent>() {
          @Override
          public void handle(WindowEvent event) {
            // if (service.isRunning()) {
            // service.cancel();
            progressDialog.close();
            // }
          }
        });

      }

      @SuppressWarnings("unchecked")
      private Stage createProgressDialog(final Service<IStatus> service) {
        stage = new Stage();

        URL url = FileLocator.find(Activator.getDefault().getBundle(),
            new Path("icons/xxx_16x16.png"), null); //$NON-NLS-1$
        stage.getIcons().add(new Image(url.getFile()));
        stage.setTitle("Downloading ..."); //$NON-NLS-1$
        // Creating StackPane
        stage.initModality(Modality.WINDOW_MODAL);
}

Antworten auf die Frage(6)

Ihre Antwort auf die Frage