Salve,

prima di postare ho letto le precedenti discussioni e i vari tutorials, ma mi mancano dei passaggi per capire la questione e poterla mettere in pratica.

Nella mia applicazione, ho un bottone cliccando il quale viene fatta una chiamata ad un webservice. Posto il codice strettamente connesso a ciò:

codice:
private void btnUpdateActionPerformed(java.awt.event.ActionEvent evt) {                                          
        setCursor(new Cursor(Cursor.WAIT_CURSOR));
        if (updateContactsJTable() == false){
            ...
          } 
        setCursor(new Cursor(Cursor.DEFAULT_CURSOR));   
}   

private boolean updateContactsJTable(){

        try {
            contactsManager.update();
            refreshContactsJTable();
            return true;
        } catch (WebServiceException ex) {
          ex.printStackTrace();
        } catch (ConnectException ex) {
           ex.printStackTrace();
        }
        return false;
    }

/*
     * ricarica la lista dei contatti
     * */
    public void refreshContactsJTable(){

        contatti = (ArrayList<Contact>) contactsManager.loadContacts();
        tableModel = new SimpleTableModel(contatti);
        contactsTable.setModel(tableModel);
        if(null != contatti){
            String lastUpd = Persistence.getUpdData();
            dataUpd.setText(lastUpd);
        }
        infoContact.setVisible(false);
    }
Quello che vorrei io è che alla pressione del bottone in questione, venisse visualizzata una progressBar.

Da quello che ho capito, al click del bottone devo far partire un altro thread. Devo quindi creare un'altra classe che mi crei sia la progressBar che questo thread?
Cioè qui già sono in piena confusione!