Guten Abend
Ich habe einen SwingWorker der eine Berechnung macht, Zwischen- und Endresultat in einer GUI anzeigt.
Nun möchte ich mit dem Endresultat eine zweite Berechnung machen und auch da Zwischen- und Endresultat anzeigen. Also am liebsten einen zweiten SwingWorker starten. Bevor der zweite SwingWorker starten kann, muss ich also sicher sein, dass der erste fertig ist und das Resultat vorliegt.
Mir ist nicht klar, ob ich den zweiten SwingWorker in der Done-Methode des ersten verschachteln soll (kommt mir komisch vor) oder, ob ich dem ersten SwingWorker einen PropertyChangeListener hinzufügen soll und die Property "done" abfragen. Oder, ob beides Quatsch ist...
Danke für eure Tipps.
Gruss
Ich habe einen SwingWorker der eine Berechnung macht, Zwischen- und Endresultat in einer GUI anzeigt.
Nun möchte ich mit dem Endresultat eine zweite Berechnung machen und auch da Zwischen- und Endresultat anzeigen. Also am liebsten einen zweiten SwingWorker starten. Bevor der zweite SwingWorker starten kann, muss ich also sicher sein, dass der erste fertig ist und das Resultat vorliegt.
Mir ist nicht klar, ob ich den zweiten SwingWorker in der Done-Methode des ersten verschachteln soll (kommt mir komisch vor) oder, ob ich dem ersten SwingWorker einen PropertyChangeListener hinzufügen soll und die Property "done" abfragen. Oder, ob beides Quatsch ist...
Danke für eure Tipps.
Gruss
Java:
worker = new SwingWorker<Void, ArrayList<Integer>>() {
@Override
protected Void doInBackground() throws Exception {
// Berechnung & publish
return null;
}
@Override
protected void process(List<ArrayList<Integer>> chunks) {
// Zwischenresultate anzeigen
}
@Override
protected void done() {
// Endresultat anzeigen
}
};
worker.execute();