Java Backgroundworker: Scope of Widget to be updated unclear
- by erlord
Hi all,
I am trying to understand the mechanism of org.jdesktop.swingx.BackgroundWorker. Their javadoc presents following example:
   final JLabel label;
   class MeaningOfLifeFinder implements BackgroundListener {
       public void doInBackground(BackgroundEvent evt) {
           String meaningOfLife = findTheMeaningOfLife();
           evt.getWorker().publish(meaningOfLife);
       }
       public void process(BackgroundEvent evt) {
           label.setText("" + evt.getData());
       }
       public void done(BackgroundEvent evt) {}
       public void started(BackgroundEvent evt) {}
   }
   (new MeaningOfLifeFinder()).execute();
Apart from the fact that I doubt the result will ever get published, I wonder how label is passed to the process method, where it is being updated. I thought it's scope is limited to the outside of the BackgroudListener implementation. Quite confused I am ... any answers for me?
Thanks in advance