public class download {
public static void Download() {
final String saveTo = System.getProperty("user.home").replace("\\", "/") + "/Desktop/";
try {
URL url = null;
url = new URL("http://cachefly.cachefly.net/10mb.test");
ReadableByteChannel rbc = Channels.newChannel(url.openStream());
FileOutputStream fos = new FileOutputStream(saveTo + "10mb.test");
fos.getChannel().transferFrom(rbc, 0, 1 << 24);
} catch (Exception e) {
e.printStackTrace();
}
}
In meiner anderen Klasse habe ich ein Ereignis-ListenerJava GUI eingefroren, wenn Datei herunterzuladen
public void download_buttonActionPerformed(ActionEvent e) {
download_button.setEnabled(false);
label_status.setText("- Downloading...");
download.Download();
}
Wenn ich die Taste auf meiner GUI klicken Sie friert und das Etikett & Taste ändern nie, bis die Datei heruntergeladen
http://img200.imageshack.us/img200/2435/45019860.png
muss ich den Download auf einem neuen Thread oder etwas anfangen? Wenn ich es auf einem neuen Thread starte ist es immer noch möglich den Fortschrittsbalken zu benutzen? Ich bin immer noch neu in Java, also entschuldige ich mich, wenn ich das völlig falsch mache.
Danke für den Link, es hilft wirklich. Ich schätze die Hilfe. – Kyle