G
Guest
Gast
Hi Leute,
ich hab folgendes Problem:
Ich hab ein UploadProgramm mit GUI geschrieben.
Unteranderem enthält das Fenster eine TextArea, in der wärend dem Upload der Namen jeder Datei die hochgeladen wurde geschrieben wird. Am Anfang war der ganze Ablauf in der main Methode enthalten. Sprich das Programm fing an zu arbeiten wenn man es nur gestartet hat.
Da das natürlich nicht sehr praktisch ist, hab ich einen Button eingebaut, einen ActionListener draufgesetzt und den ganzen Ablauf in eine actionPerformed Methode verschoben.
Wenn ich jetz das Programm starte und auf den Start Button drücke werden alle Daten schön hochgeladen, aber erst wenn alle Daten hochgeladen wurden wird der Text auf einen Schlag in die Textarea geschrieben. Normalerweiße sollte nach jeder hochgeladenen Datei eine Zeile in die Textarea geschrieben werden.
Hier der Code falls der euch weiterhilft:
Habt ihr eine Ahnung woran das liegen kann das der Text erst am Schluss geschrieben wird?
ich hab folgendes Problem:
Ich hab ein UploadProgramm mit GUI geschrieben.
Unteranderem enthält das Fenster eine TextArea, in der wärend dem Upload der Namen jeder Datei die hochgeladen wurde geschrieben wird. Am Anfang war der ganze Ablauf in der main Methode enthalten. Sprich das Programm fing an zu arbeiten wenn man es nur gestartet hat.
Da das natürlich nicht sehr praktisch ist, hab ich einen Button eingebaut, einen ActionListener draufgesetzt und den ganzen Ablauf in eine actionPerformed Methode verschoben.
Wenn ich jetz das Programm starte und auf den Start Button drücke werden alle Daten schön hochgeladen, aber erst wenn alle Daten hochgeladen wurden wird der Text auf einen Schlag in die Textarea geschrieben. Normalerweiße sollte nach jeder hochgeladenen Datei eine Zeile in die Textarea geschrieben werden.
Hier der Code falls der euch weiterhilft:
Code:
import java.io.*;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
public class KpImageUpload extends JFrame implements ActionListener {
JTextArea ta;
static final long serialVersionUID = 1L;
public KpImageUpload(String title) {
setTitle(title);
setSize(400, 300);
setLocation(200, 100);
setResizable(false);
setDefaultCloseOperation( JFrame.EXIT_ON_CLOSE );
setLayout(null);
Font font = new Font("Arial", Font.PLAIN, 11);
JButton startButton = new JButton("Bilderupload starten");
startButton.setBounds(5, 5, 385, 30);
startButton.setFont(font);
startButton.addActionListener(this);
JLabel label = new JLabel("Anleitung.....!");
label.setBounds(5, 41, 385, 20);
label.setFont(font);
ta = new JTextArea();
ta.setBounds(5, 66, 385, 150);
ta.setFont(font);
add(startButton);
add(label);
add(ta);
setVisible(true);
}
public static void main(String[] args) {
new KpImageUpload("ImageUploader V1.0");
}
public void actionPerformed(ActionEvent e) {
System.out.println("button");
FileUpload fu = new FileUpload();
SQLUpload su = new SQLUpload();
ta.append("Verbindung zum Server wird aufgebaut...\n");
boolean isConnected = fu.connect();
if(isConnected) {
ta.append("Verbunden mit Server!\n");
// Add Gallery
int galleryId = su.addGallery();
// Images in Image directory
File directory = new File("C:/Images/");
File[] filesLocal = directory.listFiles();
int quantityFilesLocal = filesLocal.length;
ta.append("Bilder werden eingelesen...\n");
ta.append(quantityFilesLocal + " Bilder zum Upload bereit!\n");
ta.append("Bilderupload gestartet...\n");
// Quantity of Images before Upload
int quantityImagesBefore = fu.getFileQuantity();
// File Upload
for(int i = 0; i < quantityFilesLocal; i++) {
String imgName = fu.uploadFile(filesLocal[i]);
ta.append("Bild " + (i+1) + "/" + quantityFilesLocal + ": " + imgName + "\n");
su.addImage(galleryId);
}
// Quantity of Images after Upload
int quantityImagesAfter = fu.getFileQuantity();
int quantityNewImages = quantityImagesAfter - quantityImagesBefore;
ta.append(quantityNewImages + " Bilder hochgeladen!\n");
}
else {
ta.append("Verbindung zum Server fehlgeschlagen!\n");
}
}
}
Habt ihr eine Ahnung woran das liegen kann das der Text erst am Schluss geschrieben wird?