Bonjour à tous,
Je suis en train de faire une bête application graphique avec Swing. Certaines opérations durent quelques secondes et je voudrais afficher un message d'attente à l'utilisateur tout en "gelant" la souris.
Voici le code appelant le traitement un peu long.
puis le code de la méthode sensée afficher le message d'attente :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 public void actionPerformed(ActionEvent e) { mouseBusy("Processus en cours..."); site.getCurrentChapter().resizeAllImages(Constants.IMAGE_HEIGHT); // processus long mouseFree(); }
Le "gel" de la souris (jFrame.setCursor) a bien lieu (j'ai le sablier) mais l'affichage du message n'a pas lieu. Il n'est visible qu'après l'exécution du processus long. Pourquoi ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 void mouseBusy (String text) { txaLog.setText(text); txaLog.setVisible(true); jFrame.setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR)); }
Merci de votre aide.
Partager