Evènement en java

Deathmaker Messages postés 6 Date d'inscription samedi 11 octobre 2003 Statut Membre Dernière intervention 1 novembre 2005 - 1 nov. 2005 à 08:43
indiana_jules Messages postés 750 Date d'inscription mardi 9 mars 2004 Statut Membre Dernière intervention 23 décembre 2008 - 2 nov. 2005 à 09:02
Tout d’abord, bonjour à vous tous !




Je vais vous expliquer mon problème en dessin, ça sera
beaucoup plus compréhensible…




Voilà ce que j’ai au départ :















Je clique sur des cases, elles changent de couleur, mais le
nombre n’est toujours pas rafraichit !







Il suffit ensuite que je clique « entre » les
cases, et le nombre se rafraichit seulement à ce moment :(











Pour le moment, j’ai une classe JCase qui implémente l’interface
MouseListener et qui dans la méthode mouseclicked fait ceci :









public void mouseClicked(MouseEvent
e){




if
(this.getCouleur().equals(Color.WHITE)){




this.setCouleur(Color.BLACK);




}




else{




this.setCouleur(Color.WHITE);




}




this.afficheCoordonnee();




}







J’ai ensuite une classe JGrille qui contient un tableau à 2
dimension de JCase[][] et qui ajoute le MouseListener sur chaque JCase.







Puis une classe Jeu qui contient une JGrille à laquelle j’ajoute
une classe anonyme :
























final JGrille client = new
JGrille(10);



client.addMouseListener(new
MouseListener(){



public void
mousePressed(MouseEvent e){}

public void
mouseReleased(MouseEvent e){}

public void
mouseClicked(MouseEvent e){




controle.rafraichit(client);





controle.repaint();

}

public void
mouseEntered(MouseEvent e){}

public void
mouseExited(MouseEvent e){}

});




Et bien évidement, “controle” est un panel qui permet l’affichage
du nombre de case sélectionné.





Ce que j’aimerai, c’est qu’à chaque clique de souris sur une
case, que le nombre se rafraichisse automatiquement.




Vous avez compris le souci ???








Je vous remercie d’avance et vous souhaite une bonne journée !

2 réponses

cs_ducheseb Messages postés 344 Date d'inscription mardi 18 mai 2004 Statut Membre Dernière intervention 23 juin 2006 9
2 nov. 2005 à 08:50
Pourquoi ne mettrais tu pas une variable statique que tu incrémenterais ou décrémenterais à chaque clique?
0
indiana_jules Messages postés 750 Date d'inscription mardi 9 mars 2004 Statut Membre Dernière intervention 23 décembre 2008 22
2 nov. 2005 à 09:02
Salut
ou alors il faudrait que ta grille (ou encore mieux, ta cellule) connaisse le composant parent qui la contiennent afin qu'à chaque clique, tu puisses dire à ce composant de se rafraîchir.

Voilà

le monde a des idées : la preuve, c'est qu'il y en a de mauvaises
ne comprends pas tout, mais je parle de tout : c'est ce qui compte
0
Rejoignez-nous