Beste Tweakers,
Een intensieve rekenjob wil ik graag uit de UI houden middels een SwingWorker. Wel zou ik graag op de hoogte willen blijven d.m.v. een progressbar. Heb een SwingWorker gemaakt wiens doInBackground methode ik heb overrided.. Elke procent voortgang wordt middels een setProgress bijgewerkt:
De SwingWorker weet via een PropertyChangeListener dat hij daar zijn events mag plempen:
De voortgang percentages worden via setProgress bijgewerkt, echter, pas als de SwingWorker klaar is komen ze voorbij hobbelen:
Doe ik iets niet goed?
Overigens stuur ik via een TimerAction later dezelfde ProgressBar aan wat perfect gaat, dus aan de ProgressBar zal het waarschijnlijk niet liggen.
Een intensieve rekenjob wil ik graag uit de UI houden middels een SwingWorker. Wel zou ik graag op de hoogte willen blijven d.m.v. een progressbar. Heb een SwingWorker gemaakt wiens doInBackground methode ik heb overrided.. Elke procent voortgang wordt middels een setProgress bijgewerkt:
De SwingWorker weet via een PropertyChangeListener dat hij daar zijn events mag plempen:
Java:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
| LoadStuff loadG = new LoadStuff (); // A property listener used to update the progress bar PropertyChangeListener listener = new PropertyChangeListener() { public void propertyChange(PropertyChangeEvent event) { if ("progress".equals(event.getPropertyName())) { System.out.println("propertyname: "+ event.getPropertyName() + " setting progressbar with value: " + event.getNewValue()); progressBar.setValue((Integer) event.getNewValue()); } } }; loadG.addPropertyChangeListener(listener); loadG.execute(); |
De voortgang percentages worden via setProgress bijgewerkt, echter, pas als de SwingWorker klaar is komen ze voorbij hobbelen:
code:
1
2
3
4
5
6
7
8
9
10
11
12
| propertyname: progress setting progressbar with value: 99 propertyname: progress setting progressbar with value: 1 propertyname: progress setting progressbar with value: 2 propertyname: progress setting progressbar with value: 3 propertyname: progress setting progressbar with value: 4 propertyname: progress setting progressbar with value: 5 propertyname: progress setting progressbar with value: 6 propertyname: progress setting progressbar with value: 7 propertyname: progress setting progressbar with value: 8 propertyname: progress setting progressbar with value: 9 propertyname: progress setting progressbar with value: 10 etc naar de 99 |
Doe ik iets niet goed?
Overigens stuur ik via een TimerAction later dezelfde ProgressBar aan wat perfect gaat, dus aan de ProgressBar zal het waarschijnlijk niet liggen.