Bonjour, je suis en train de coder un interface swing et je suis confronté à un problème de rafraichissement, voici le code concerné :
Un bouton swing avec une méthode associée :
Code :
- validateButton.addActionListener(new java.awt.event.ActionListener() {
- public void actionPerformed(java.awt.event.ActionEvent evt) {
- validateButtonPA();
- }
- });
|
Ce que fait la méthode :
Code :
- private void validateButtonPA(){
- SwingUtilities.invokeLater(new Runnable() {
- public void run() {
- informationArea.setText("Recherche du Naming Service en cours." );
- }
- });
- ..................(reste du code de traitement) ..........................
- }
|
Le problème est que avec ou sans le invokeLater, le setText ne prend effet que après le code de traitement qui suit. J'ai beau avoir essayé de rajouter des repaint, revalidate, .... rien n'y fait.
Je ne comprends pas ce qui ne va pas, j'ai essayé de suivre le tuto se trouvant à cette adresse http://gfx.developpez.com/tutoriel [...] threading/, mais ça ne semble pas fonctionner comme indiqué.
Si quelqu'un voit ce qui ne va pas, merci de ma le signaler
.