Forum Clubic

Question Java button listener

Salut

je suis sous java, et je suis entrain d’implémenter une interface davec des bouttons sous JFrame. Lorsque mon programme tourne à un moment l’utilisateur doit faire un choix et dois appuyer sur un des 3 boutons de mon programme. Comment je peux implémenter cela ? Il faudrait que le programme stop et attende que l’utilisateur appuit sur un des boutons pour ensuite continuer

merci d’avance pour vos réponses A+

Une astuce serait de faire tourner différents threads.

Un thread qui exécuterais ton programme principal et un autre qui “écouterait” les actions sur tes boutons.
Tu places un [i]wait/i dans ton thread principal lorsque tu veux qu’il s’arrête pour attendre le choix de l’utilisateur.

Au préalable tu auras soit démarré le second thread gérant les boutons soit tu l’auras réveillé.
Tu places un notify() ou notifyall() dans ce dernier thread lorsque l’utilisateur clique sur un bouton pour réveiller le programme principal qui pourra alors poursuivre.

Ensuite tu n’as plus qu’à gérer la fin de vie du thread des boutons en l’endormant pour une réutilisation prochaine ou le terminer.

ATTENTION: les threads doivent être détruits explicitement car ils continuent de fonctionner jusqu’à l’arrêt de la machine dans le cas contraire un peu à la manière d’un Applet qu’on ne ferme pas explicitement.

Plus simple : Pourquoi ne pas scinder le “programme” en deux étapes :
Première étape -> Message Utilisateur (demandant de choisir) -> Seconde étape
?