Bonjour à tous et à toutes,

en fait, j'ai un vrai souci et je ne sais vraiment pas comment arrivé a mes fins...
Je vous explique, je construit un tableau de JButton sur lesquels je pose des icones, une fois se tableau construit, je le met dans un JPanel.

Et la j'ai une question, j'aimerais intervertir les icones qui sont sur les boutons, pour cela, 2 methodes:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
	private void permuterIcones(Case c)
	{
		int nl_vide= this.caseVide.getLigne();
		int nc_vide= this.caseVide.getColonne();
		int nl_c= c.getLigne();
		int nc_c= c.getColonne();
		this.icones[nl_vide][nc_vide]= this.icones[nl_c][nc_c];
		this.icones[nl_c][nc_c]= null;
        }
Soit:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
	private void permuterIcones(Case c)
	{
		int nl_vide= this.caseVide.getLigne();
		int nc_vide= this.caseVide.getColonne();
		int nl_c= c.getLigne();
		int nc_c= c.getColonne();
                this.jb_cases[nl_vide][nc_vide].setIcon(this.jb_cases[nl_c][nc_c].getIcon());
                this.jb_cases[nl_c][nl_c].setIcon(null);
       }
Inconvénient, la première fonctionne si je reconstruis un nouveau JPanel (hors, je n'ai pas le droit)

Et en ce qui consiste la seconde, j'observe qqchose de pas normal:
Avant permutation:


Apres permutation:


D'ou cela peut il venir?

Merci d'avance