Hi,
mir ist es schon fast peinlich diese Frage zu stellen, aber ich komme einfach nicht mit einer simplen JProgressBar klar bzw. verstehe ich das nicht:
1. ich habe eine Methode,die eine Datei von einer Inetseite lädt. Dabei wird eine Variable (in Prozent) errechnet.
Die Variable erg wird auch richtig berechnet...Jetzt will ich diese Berechnung auf die JProgressBar übertragen (ich dachte das wäre einfach xD ).
Hier mal der Buttonlistener:
Hier die Thread-Klasse:
Was ich absolut nicht verstehe: Beim System.out sehe ich,dass die Werte von der ersten Methode erfolgreich übertragen und gesetzt werden...Aber warum zum Teufel bleibt die Bar leer und es wird NICHTS angezeigt bzw. aktualisiert.
Ich weiß,es gibt ein paar sehr gute Tutorials zur ProgressBar, aber ich wollte ein möglichst simples Beispiel anwenden, da ich es auch komisch finde,dass man für eine simple Bar erstmal 200 Zeilen Code schreiben muss ^^
Danke schon mal!
mir ist es schon fast peinlich diese Frage zu stellen, aber ich komme einfach nicht mit einer simplen JProgressBar klar bzw. verstehe ich das nicht:
1. ich habe eine Methode,die eine Datei von einer Inetseite lädt. Dabei wird eine Variable (in Prozent) errechnet.
Java:
public static void loadDataFromUrl(){
//
int bisher = 0;
int zahll =1;
while ((n = inputStream.read(tmp_buffer)) > 0) {
fileOutput.write(tmp_buffer, 0, n);
fileOutput.flush();
bisher = bisher + n;
erg = (bisher*100)/length;
}
}
Die Variable erg wird auch richtig berechnet...Jetzt will ich diese Berechnung auf die JProgressBar übertragen (ich dachte das wäre einfach xD ).
Hier mal der Buttonlistener:
Java:
public static class btnDoAction implements ActionListener{
public void actionPerformed (ActionEvent e){
new Thread(new thread1()).start(); //Start the thread
loadDataFromUrl();
}
}
Hier die Thread-Klasse:
Java:
public static class thread1 implements Runnable{
public void run(){
while (erg < 101){
barDo.setValue(erg);
System.out.println(erg); //hier steht der richtige Wert drinne,aber warum wird der nicht gesetzt!!!!!!!
barDo.repaint();
}
}
}
Was ich absolut nicht verstehe: Beim System.out sehe ich,dass die Werte von der ersten Methode erfolgreich übertragen und gesetzt werden...Aber warum zum Teufel bleibt die Bar leer und es wird NICHTS angezeigt bzw. aktualisiert.
Ich weiß,es gibt ein paar sehr gute Tutorials zur ProgressBar, aber ich wollte ein möglichst simples Beispiel anwenden, da ich es auch komisch finde,dass man für eine simple Bar erstmal 200 Zeilen Code schreiben muss ^^
Danke schon mal!
Zuletzt bearbeitet: