Problème actionPerformed lors d'un Thread

haythemrafa Messages postés 7 Date d'inscription mercredi 25 avril 2012 Statut Membre Dernière intervention 11 mai 2012 - 10 mai 2012 à 00:02
cs_Julien39 Messages postés 6414 Date d'inscription mardi 8 mars 2005 Statut Modérateur Dernière intervention 29 juillet 2020 - 10 mai 2012 à 08:32
J'ai le code suivant qui s'exécute dans la méthode run() d'un thread qui implémente ActionListener

bAjouter.addActionListener(this);

dans la méthode actionPerformed,J'ai le code suivant :

public void actionPerformed(ActionEvent e) {

if(v5.isEmpty()){
lblLiv5.setText("");
lblSL5.setText("");
lblP5.setText("");
elibre5 = 0 ;
System.out.println("empty");
z++;

}

else {
lblLiv5.setText(v5.elementAt(0).toString());
lblSL5.setText(v5.elementAt(1).toString());
lblP5.setText(v5.elementAt(2).toString());
num5 = Integer.parseInt(v5.elementAt(3).toString());
v5.removeElementAt(0);
v5.removeElementAt(0);
v5.removeElementAt(0);
v5.removeElementAt(0);
System.out.println(v5);
elibre5 = 1;
System.out.println("full");
z--;

}
}


Le problème c'est que à chaque clic du bouton le programme ne se contente pas d'excécuter une fois ce qui est dans actionPerformed mais continue à le faire jusqu'à ce qu'il ne trouve aucune condition adéquate !!
Que faire ??

1 réponse

cs_Julien39 Messages postés 6414 Date d'inscription mardi 8 mars 2005 Statut Modérateur Dernière intervention 29 juillet 2020 371
10 mai 2012 à 08:32
Salut,

Je ne sais pas comment tu utilises ton thread mais dans tous les cas, faire un addActionListener dans un Thread est une mauvaise idée, je te conseil de sortir cette action de la méthode run.
0
Rejoignez-nous