Home / Programmazione / Java / Creare dei loading dialog in Java
Mattepuffo

Creare dei loading dialog in Java

Creare dei loading dialog in Java

Quello che vediamo oggi è come creare un JDialog che compare in fase di caricamento, e che scompare al termine dell'operazione.

Un loading dialog in sostanza.

Partiamo da un JDialog tipo quello che ho postato in questo articolo (ma uno vale l'altro).

Bene, a questo punto vediamo il codice lanciato alla pressione di un tasto:

btnConnect.addActionListener((ActionEvent e) -> {
    final GenericDialog loading = new GenericDialog(this, "", "Loading...");
    SwingWorker<Void, Void> worker = new SwingWorker<Void, Void>() {

        @Override
        protected Void doInBackground() throws Exception {
            // DO STUFF
            return null;
        }

        @Override
        protected void done() {
            loading.dispose();
        }
    };
    worker.execute();
    loading.setVisible(true);
});

Come vedete usiamo uno SwingWorker per lanciare le nostre operazioni nel metodo doInBackground.

Poi nel moetodo done, lanciato automaticamente al termine delle operazioni, chiudiamo il JDialog.

In pratica, con SwingWorker, possiamo lanciare delle operazioni in background, senza bloccare l'EDT (Event Dispatch Thread).

Ovviamente è un esempio base, sicuramente migliorabile.

In un prossimo articolo vedremo come usare la Reflection.