Bonsoir tout le monde !
Je suis actuellement en train de réaliser un jeu d'echec en Java seulement je rencontre un problème. (Je suis toute débutante dans ce langage)
J'ai presque fini, j'ai réussi à faire l'affichage. Chaque case de mon plateau d'échec est représenté par un canvas, noir ou blanc, auquel j'ai associé une image (.png) lorsqu'une piece se trouve sur une de ces cases.
J'arrive à déplacer les pièces, c'est-à-dire que lorsque je clique sur la piece à deplacer et que je clique ensuite sur la case où je veux qu'elle se déplace l'image de la pièce se réaffiche bien.
En revanche, l'image de la pièce reste toujours à l'ancien endroit où elle était.
Je crois avoir tout essayé je n'en peux plus ! Comment faire pour qu'elle ne s'affiche plus lorsque la pièce est déplacé ?
Est-ce qu'il y a une méthode pour supprimer une image associé à un canvas ?
Voilà ce que j'ai en ce qui concerne les images dans la classe "Case"
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18 public void associeImage(String s) { if (s != "") this.image = (new ImageIcon(s)).getImage (); else { this.image = null ; repaint () ; } } public void paint (Graphics g) { if (image != null) g.drawImage (image,0,0,null) ; else g.drawImage(null,0,0,null); }
Et lorsque j'affiche le plateau, pour faire apparaitre les images des pièces jai le code suivant :
Si quelqu'un pourrait m'éclairer j'en serais soulagée, ça fait des jours que j'essaye plein de choses et rien n'y fait !
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 for (int i=0;i<8;i++) { for (int j=0;j<8;j++) { if (this.ec.donnet(i,j) != null) { String s = this.ec.donnet(i,j).quelleImage(); //la methode quelleImage() se trouve dans la classe "Piece" et renvoi le titre de l'image (ex : "roiNoir.png") this.t[i][j].associeImage(s); // t = tableau de case } } }
Merci d'avance![]()
Partager