IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

AWT/Swing Java Discussion :

Manipulation de Composants


Sujet :

AWT/Swing Java

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    66
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Mai 2006
    Messages : 66
    Par défaut 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 : 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
    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

    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);



    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
    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!!

  2. #2
    Expert confirmé
    Avatar de sinok
    Profil pro
    Inscrit en
    Août 2004
    Messages
    8 765
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Août 2004
    Messages : 8 765
    Par défaut
    Tu déclares ton puzzle en tant que JPanel, donc tu n'as accès qu'aux méthodes déclarer dans la classe JPanel, pas dans la tienne.

    Utilises plutôt ceci:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Composant_Puzzle pane_Puzzle=new Composant_Puzzle();
    Au lieu de ceci


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    JPanel pane_Puzzle=new Composant_Puzzle();

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    66
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Mai 2006
    Messages : 66
    Par défaut
    Yeah baby,


    Merci bien pour ton aide!!!!!
    çà marche à présent
    Problème résolu!

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. manipuler un composant d'une frame depuis une autre frame
    Par Jcpan dans le forum Débuter avec Java
    Réponses: 4
    Dernier message: 14/01/2009, 10h27
  2. manipuler des composants
    Par halic dans le forum Windows Forms
    Réponses: 8
    Dernier message: 17/03/2007, 22h47
  3. Réponses: 4
    Dernier message: 24/11/2006, 11h36
  4. [VB]Manipuler le composant Multipage
    Par ennamsaoui dans le forum VB 6 et antérieur
    Réponses: 6
    Dernier message: 31/03/2006, 17h12
  5. [Composant] Pb lors de la manipulation en design
    Par guedelmalin dans le forum Composants VCL
    Réponses: 2
    Dernier message: 20/07/2005, 11h27

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo