affichage element swing

affichage element swing - Java - Programmation

Marsh Posté le 23-11-2004 à 12:25:13    

bonjour
 
j'ai ma classe suivante, j'ai cree un JMenu pour ranger la liste des options possibles dont celle d'ajout d'element graphique dans mon JFrame
 
malheureusement ca ne fonctionne pas malgre que le JLabel panneau soit global, ca marche quand je passe directement par une methode mais pas lorsque la methode est appele via un addActionListener(maMethode), c'est a dire le JMenu
 
quelqu'un sais t il ce qu'il manque?
merci  
 
 
public MaClasse() extends JFrame{
 
   Container c;
    JLabel panneau;
 
  MaClasse(){
       c = getContentPane();
       c.setLayout(new BorderLayout());
               
       panneau = new JPanel();
       panneau.setBorderLayout(new GridLayout(5,2));
       
       c.add(panneau, BorderLayout.CENTER);
 
       creationMenu();
 
       initialisationAff();
  }
 
 
   public void initialisationAff(){
       
          JLabel toto = new JLabel("toto" );
          panneau.add(toto);   //fonctionne et s'affiche
   }
     
    public void ajoutElement(){
          JLabel titi = new JLabel("titi" );
          panneau.add(titi);   //fonctionne pas element non affiche
    }
 
    public void creationMenu(){
           
         JMenuBar barre = new JMenuBar()...
         //creation de mon menu
        .....
         
 
        JMenuItem optionNouveau = new JMenuItem("nouveau" );
         optionNouveau.addActionListener(
              new ActionListener(){
                      public void actionPerformed(ActionEvent e){
                               ajoutElement();
                      }
              }
         );
 
    }
   
}

Reply

Marsh Posté le 23-11-2004 à 12:25:13   

Reply

Marsh Posté le 23-11-2004 à 15:41:33    

kungouf a écrit :


quelqu'un sais t il ce qu'il manque?

oui, la capacité à analyser et exprimer ton problème :sweat:

Reply

Marsh Posté le 24-11-2004 à 23:36:08    

public MaClasse() extends JFrame{  
 
 
petit coquin

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed