ciao!
ho questo spezzone di codice da lanciare in diversi punto del programma:
in sostanza l'unica cosa che cambia è la riga commentata, che è dove eseguo l'operazione in background, che può essere uno scaricamento di un file dal web, opppure un invio di dati in post ad un servizio remoto.codice:public class BackgroundTask { public void execTask() throws InterruptedException { LoadingDialog loadingDialog = new LoadingDialog(); Task<Void> task = new Task<Void>() { @Override public Void call() throws InterruptedException { // DO STUFF return null; } }; loadingDialog.activateProgressBar(task); task.setOnSucceeded(event -> { loadingDialog.getDialogStage().close(); }); task.setOnCancelled(event -> { loadingDialog.getDialogStage().close(); }); loadingDialog.getDialogStage().show(); Thread thread = new Thread(task); thread.start(); } }
per evitare di usare tutto quel codice ovunque nel programma (in circa una decina di punti), ho pensato di generalizzarlo e poi passare in qualche modo solo l'operazione da eseguire.
è possibile secondo voi??

Rispondi quotando