Bonjour a tous, je suis en train de développer une petite appli d'envoi de gros fichiers, tout fonctionne jusqu'a l'affichage de mon progressMonitor... Il s'affiche... mais il n'y a rien du tout dedans !

J'ai lu le tuto sun, mais je ne comprends pas tres bien... Je pense que c'est un probleme de thread mais je ne connai pas du tout comment tout cela fonctionne...

Toutes les actions surviennent apres le clic sur un bouton
mon code :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
public void actionPerformed(java.awt.event.ActionEvent e) {
   //ouverture d'un JfileChooser
   //apres le choix on recupere le nom du fichier
   //on se connecte au ftp
   //si les mdp et login sont bon
   if (ftp.login("xxxxx", "xxxxx"))
   {	
	ProgressMonitor moniteur = new ProgressMonitor(MyFrame.this,"Envoi",path,0,100);
	moniteur.setProgress(0);
	String command = "stor "+dossier+"/"+param;
	//On ouvre le fichier en local
        RandomAccessFile infile = new RandomAccessFile(path, "r");
        // Converti le RandomAccessFile en un InputStream
        FileInputStream fileStream = new FileInputStream(infile.getFD());
        if (!ftp.setupDataPasv(command)) return;
		OutputStream out = ftp.pasvSocket.getOutputStream();
		 byte b[] = new byte[4096];
		// Stock les donnés dans un fichier
		 int amount;
		 long restant = taille;
	        while ((amount = fileStream.read(b)) > 0)
	        {
	        	restant = restant - amount;
	        	long pourcentageTmp = restant*100/taille;
	        	int pourcentage = (int)(100-pourcentageTmp);
	        	moniteur.setProgress(pourcentage);
	        	System.out.println(pourcentage);
                        out.write(b, 0, amount);
	        }
	//on ferme le flux
	//on ferme la connexion
	 }
} catch (UnknownHostException e1) {
	e1.printStackTrace();
} catch (IOException e1) {
	e1.printStackTrace();
}
 
}