Hallo!
ich habe eine methode in der eine andere methode aufgerufen wird:
Ich will, dass die erste methode wartet bis die aufgerufene fertig ist, bis sie weitermacht. Das ist jetzt nicht der Fall. Ich vermute es liegt daran das ich in der zweiten methode einen eigenen thread starte? Sinn von dem ganzen ist ein kleines Fenster das einen Fortschrittsbalken anzeigt ...
Hat jemand eine Idee wie ich es schaffe das die erste methode wartet bis die zweite fertig ist UND aber der Fortschrittsbalken angezeigt wird wie er sich "aufbaut". Alle meine bisherigen Versuche mit Thread.wait usw resultierten darin, dass die erste methode zwar wartet, der fortschrittsbalken sich aber nicht mehr aufbaut ....
Besten Dank!
ich habe eine methode in der eine andere methode aufgerufen wird:
Java:
....
Progressbar.start();
....
Java:
public class Progressbar {
public static void start() {
final JFrame frame = new JFrame("Calculating");
// frame.setDefaultCloseOperation(EXIT_ON_CLOSE);
final JProgressBar bar = new JProgressBar(0, 100);
Dimension prefSize = bar.getPreferredSize();
prefSize.width = 300;
prefSize.height = 50;
bar.setPreferredSize(prefSize);
Thread t = new Thread(){
public void run(){
for(int i = 0 ; i < 100 ; i++){
final int percent = i;
SwingUtilities.invokeLater(new Runnable() {
public void run() {
bar.setValue(percent);
bar.setStringPainted(true);
}
});
try {
Thread.sleep(30);
} catch (InterruptedException e) {}
if(i == 99){
frame.dispatchEvent(new WindowEvent(frame, WindowEvent.WINDOW_CLOSING));
}
}
}
};
frame.add(bar);
frame.pack();
frame.setVisible(true);
frame.setLocationRelativeTo(null);
t.start();
}
}
Ich will, dass die erste methode wartet bis die aufgerufene fertig ist, bis sie weitermacht. Das ist jetzt nicht der Fall. Ich vermute es liegt daran das ich in der zweiten methode einen eigenen thread starte? Sinn von dem ganzen ist ein kleines Fenster das einen Fortschrittsbalken anzeigt ...
Hat jemand eine Idee wie ich es schaffe das die erste methode wartet bis die zweite fertig ist UND aber der Fortschrittsbalken angezeigt wird wie er sich "aufbaut". Alle meine bisherigen Versuche mit Thread.wait usw resultierten darin, dass die erste methode zwar wartet, der fortschrittsbalken sich aber nicht mehr aufbaut ....
Besten Dank!
Zuletzt bearbeitet: