2010-06-02 12 views
0

J'ai une interface graphique créée en utilisant le générateur d'interface graphique netbeans. Je veux y ajouter un objet (nous allons essayer avec le bouton) après avoir appuyé sur une DButtonAjout d'une méthode dans JPanel créée à l'aide du générateur GUI

Le code très simple que j'ai écrit dans ActionListener et travaux:

button1.addActionListener(new ActionListener() { 

     public void actionPerformed(ActionEvent arg0) { 
      panel2.add(new JButton("X")); 
      panel2.validate(); 
     } 
    }); 

Howewer dans l'interface créée par NetBeans ce travail ne marche pas:

private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) { 
jPanel1.add(new JButton("X")); 
jPanel1.validate(); 
System.out.print("aa"); 
} 

Mais il affiche "aa" pour que l'écouteur d'actions fonctionne.

Il ressemble à un problème semblable à celui montré ici: http://bytes.com/topic/java/answers/857720-adding-icon-jpanel

mais je ne vois même ce rectangle dont a écrit JosAH.

J'apprécierai n'importe quelle suggestion.

Répondre

0

Créez un panneau d'espace réservé dans votre éditeur, puis ajoutez-y le panneau. Je pense que le problème concerne les mises en page et autres, car certaines mises en page nécessitent la présence de données de mise en page lors de l'ajout du composant (c'est-à-dire que le deuxième champ de add (c, ...) est défini). Créez donc un espace réservé JPanel à l'aide de l'outil de création de l'interface utilisateur graphique, nommez-le de façon à y faire référence, puis ajoutez le composant à ce panneau. Donnez-lui une disposition telle que FlowLayout qui ne nécessite aucune donnée de mise en page. Vous pouvez également supprimer tous les encarts du panneau pour éviter les espaces massifs, ce que vous pouvez probablement faire dans l'éditeur d'interface utilisateur.