Bonjour,
Je conçois actuellement un damier en JAVA et suis confronté à un problème graphique.
Explication :
Les cases de mon jeu de dame sont des instances de la classe "caseDamier" qui hérite de JButton :
Code :
- public class caseDamier extends JButton
|
Lors de la création des cases, j'ajoute une image de fond sur chacune d'entre elle grâce à la méthode setIcon :
Code :
- for(int i = 1; i <= n; i++)
- {
- for(int j = 1; j <= n; j++)
- {
- caseDamier caseDame = new caseDamier(i, j);
-
- if((i+j) % 2 == 0)
- {
- caseDame.setIcon(new ImageIcon("caseMarron.png" ));
- }
- else
- {
- caseDame.setIcon(new ImageIcon("caseBlanche.png" ));
- }
- }
- }
|
Rendu actuel :
Maintenant, mon problème est le suivant : comment faire pour ajouter les dames (qui sont également des images) sur mes caseDame? C'est à dire : comment superposer deux images l'une sur l'autre : en index 0, il y aurait le fond de la case (caseMarron.png ou caseBlanche.png), et au dessus d'elle, l'icone de la dame ("queen.png" ).
J'ai essayé en utilisant deux fois de suite la méthode setIcon mais cela ne marche pas :
Code :
- for(int i = 1; i <= n; i++)
- {
- for(int j = 1; j <= n; j++)
- {
- caseDamier caseDame = new caseDamier(i, j);
-
- if((i+j) % 2 == 0)
- {
- caseDame.setIcon(new ImageIcon("caseMarron.png" ));
- if la dame doit être posée ici
- caseDame.setIcon(new ImageIcon("queen.png" ))
- }
- else
- {
- caseDame.setIcon(new ImageIcon("caseBlanche.png" ));
- if la dame doit être posée ici
- caseDame.setIcon(new ImageIcon("queen.png" ))
- }
- }
|
Donc en faisant d'innombrables recherches sur google et testé plein de choses différentes (utilisation d'un JLayeredPane par exemple), j'ai pensé aboutir à quelque chose mais rien n'y fait, je n'arrive pas à avoir mes deux images l'une sur l'autre.
Voilà si quelqu'un aurait une solution à me proposer je lu en saurait très reconnaissant.