Manipulation de Composants
Bonjour à tous!!!
Ma classe de frame FormPrincipale a pour mission d'afficher les composants pieces de mon puzzle dans mon panel puzzle!!!
L'affichage de chaque pièce se fait à partir de mon panel pane_Puzzle
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
| public class FormPrincipale extends JFrame{
public FormPrincipale(String p_title,Piece[] pieces) {
super(p_title);
construire(pieces);
}
private void construire(Piece[] pieces)
{
int ligne=0;
int colonne=0;
int num_piece=0;
//Ou seront affichés les composants pieces
JPanel pane_Puzzle=new Composant_Puzzle();
//On ajoute les pièces
for (ligne=0; ligne<16; ligne++){
for (colonne=0;colonne<16;colonne++){
pane_Puzzle.ajout_Piece(pieces[num_piece],ligne,colonne);
num_piece++;//Au prochain tour de boucle, une autre pièce sera ajoutée
}
}
setContentPane(pane_Puzzle);
}
} |
Pour cela le panel apelle la fonction ajout_Piece dans le Panel Puzzle de nom pane_Puzzle affiché ci -dessous, et là s'affiche l'erreur suivante au niveau de la ligne en rouge
:aie:
E:\JAVA\Eternity\src\eternity\FormPrincipale.java:45: cannot find symbol
symbol : method ajout_Piece(eternity.Piece,int,int)
location: class javax.swing.JPanel
pane_Puzzle.ajout_Piece(pieces[num_piece],ligne,colonne);
:aie:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
|
public class Composant_Puzzle extends JPanel{
private int cote_carre=Composant_Piece.get_cote_carre();
private int cote_case=cote_carre+1;
private static int marge=30;
/** Creates a new instance of Composant_Puzzle */
public Composant_Puzzle() {
super(null);
setPreferredSize(new Dimension(marge+(cote_case)*16,marge + (cote_case)*16) );
}
public void ajout_Piece(Piece piece,int ligne,int colonne){
JComponent la_Piece=new Composant_Piece(piece); // un Composant Piece
la_Piece.setLocation(cote_case*ligne,cote_case*colonne);
this.add(la_Piece);
}
protected void paintComponent(Graphics g) {
....................................
.....................................
//peint la grille...
}
}
} |
Pourquoi cette erreur?? merci!!:aie: