Bonjour
J'ai lu l'excellent tuto sur Developpez pour créer ses propres listeners. J'ai réussi à faire marcher le programme mais j'ai dû utiliser une "astuce" qui casse tout le design pattern MVC...
En fait, mon interface graphique lance un thread.
Le problème, c'est que 'p' lance une boucle infinie (c'est voulu) et donc si je fais :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 public void run() { Partie p = new Partie(1,4); }
évidemment, le listener n'est jamais crée... Donc je ne vois pas comment faire... Ce que j'ai réussi à faire pour au moins tester que tout marche au niveau du code, c'est faire addMyListener dans le constructeur de Partie et de passer au constructeur de Partie une référence sur l'interface graphique et donc j'ai :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 public void run() { Partie p = new Partie(1,4); p.addMyListener(this); }
Et là, ça marche ... Seulement je perds l'intérêt du listener puisque mon modèle dépend de l'interface graphique...
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 public Partie(int a, int b, Gui ig) { // du code... // avant la boucle infinie addMyListener(ig);
La solution est sûrement évidente, c'est peut-être l'heure tardive qui me rend c*n![]()
Nas'
Partager