Und wieder stehe ich vor einem Problem, das ich selbst mit den Sun-Tutorials und dem was ich sonst noch so im INet finde bisher nicht überwinden konnte.
Ich will eine indetermined Progress Bar einbauen, die ihr Werk verrichtet, sobald man einen Button betätigt.
Durch eben erwähnte Betätigung werden unter Anderem einige while-Schleifen in Gang gesetzt, die schon mal einige Zeit in Anspruch nehmen können.
Sobald die Berechnungen abgeschlossen sind, sollte auch die ProgressBar aufhören, ihren Weg von links nach rechts zu gehen.
Habe mir dass ungefähr wie folgt vorgestellt:
private void ButtonActionPerformed(java.awt.event.ActionEvent evt) {
ProgressBar.setIndetermined(true); /*ab hier sieht man die ProgressBar "laufen" */
Button.setEnabled(false);
/*
*
* Hier wird berechnet
*
*/
ProgressBar.setIndetermined(false); /*ab hier steht die ProgressBar wieder still */
Button.setEnabled(true);
}
Zwar wird in den Sun-Tutorials zum Thema der Umstand erwähnt, das man die Berechnungen im Hintergrund laufen lassen sollte, damit man auch merkt, dass die ProgressBar läuft, aber wie man das hinbekommen soll, habe ich leider nicht verstanden. Daher friert meine GUI ein, solange die Berechnungen durchgeführt werden, und nichts ist mit sichtbarem Progress.
Freue mich über jegliche Hilfe.
PS: Falls jemand weiss, wie man bei zu lange laufenden Berechnungen (also wenn die Geduld mal wieder nur in zu kleinen Mengen vorhanden ist) selbige per Button Abbrechen kann, würde ich mich auch in diesem Falle über einen Post freuen.