Vermeidung von Not on FX-Anwendungsthread; currentThread = JavaFX-Anwendungsthreadfehler?
Die folgenden Codefragmente geben mir einen FehlerNot on FX application thread; currentThread
=JavaFX
Application Thread
Diese 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);
}