Hallo Leute,
ich bin am verzweifeln. Trotz vieler Beispielen und vielen Stunden googlen sind JProgressBar und ProgressMonitor meine große Schwäche...
Also, mein Problem ist folgendes:
Ich habe ein Programm, welche mir Dateien anhand von Links aus dem Internet runterläd. Das klappt bis jetzt auch wunderbar, nur ich möchte den Fortschritt des Downloads jetzt mit einem ProgressMonitor anzeigen, was mir aber irgendwie schwer fällt.
Ich habe folgenden Code schon zustande gebracht:
Wenn ich den Download dann starte, passiert nichts. Erst wenn die Datei runtergeladen ist, erscheint der ProgressMonitor und zählt einfach nur hoch(zb. ist die Datei 5000kb groß, zählt er von 0 bis 5000)
Wäre nett, wenn mir jemand sage könnte, was ich da falsch mache.
mfg.
MonsterBit
ich bin am verzweifeln. Trotz vieler Beispielen und vielen Stunden googlen sind JProgressBar und ProgressMonitor meine große Schwäche...
Also, mein Problem ist folgendes:
Ich habe ein Programm, welche mir Dateien anhand von Links aus dem Internet runterläd. Das klappt bis jetzt auch wunderbar, nur ich möchte den Fortschritt des Downloads jetzt mit einem ProgressMonitor anzeigen, was mir aber irgendwie schwer fällt.
Ich habe folgenden Code schon zustande gebracht:
Java:
pm = new ProgressMonitor(mainFrame, "Downloading file...", "", 0, (int) size/1024);
pm.setMillisToDecideToPopup(0);
pm.setMillisToPopup(0);
int progress = 0;
Thread thread = new Thread (new Runnable() {
public void run() {
while(!pm.isCanceled() && progress<=pm.getMaximum()) {
SwingUtilities.invokeLater(new Runnable()
{
public void run()
{
pm.setProgress(progress);
pm.setNote(progress+" kb of "+size/1024+" done");
}
});
try{
//Hier steht der Code, der für den Download sorgt
}
catch (Exception ex) {}
progress++;
}
}
Wenn ich den Download dann starte, passiert nichts. Erst wenn die Datei runtergeladen ist, erscheint der ProgressMonitor und zählt einfach nur hoch(zb. ist die Datei 5000kb groß, zählt er von 0 bis 5000)
Wäre nett, wenn mir jemand sage könnte, was ich da falsch mache.
mfg.
MonsterBit