Vi posto in breve il mio codice all'interno del frame principale
codice:
        EstrazioneDati ed = new EstrazioneDati(this);

        this.progressBar= new ProgressBar();

            ProgressBar.setDefaultLookAndFeelDecorated(true);
            this.progressBar.setSize(200, 200);
            Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
            Dimension windowSize = this.progressBar.getSize();
            this.progressBar.setLocation(Math.max(0,
                    (screenSize.width
                    - windowSize.width) / 2),
                    Math.max(0,
                    (screenSize.height
                    - windowSize.height) / 2));
            this.progressBar.setVisible(true);
 

        ed.addPropertyChangeListener(this.progressBar);
    
  //avvio l'estrazione dei dati
        ed.execute();
      
        while(!ed.isDone()){}

        this.progressBar.dispose();
dove EstrazioneDati estende SwingWorker (e fa l'elaborazione) e ProgressBar implementa PropertyChangeListener.
La mia domanda è:
Perché la riga di codice in EstrazioneDati
codice:
this.setProgress( progress);
non chiama il metodo in ProgressBar
codice:
public void propertyChange(PropertyChangeEvent evt)
?

Grazie