Bonjour à tous...
J'essaye de faire une interface graphique, dont la forme n'est pas figée au départ...
Par exemple, je voudrais que l'utilisateur puisse entrer une valeur n dans un champ texte et que ceci entraine l'apparition de n boutons...
J'ai essayé le code suivant :
Code :
- import java.awt.event.*;
- import javax.swing.*;
- import java.awt.*;
- public class Test2 extends JFrame implements ActionListener {
-
- JTextField c = new JTextField("3",5);
-
- public Test2() {
- super("Title Bar" );
- String val = c.getText();
- setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
- c.addActionListener(this);
- FlowLayout flow = new FlowLayout();
- getContentPane().setLayout(flow);
- for (int i=0; i<Integer.parseInt(c.getText());i++){
- JButton b = new JButton("b"+i);
- b.addActionListener(this);
- getContentPane().add(b);
- }
-
- getContentPane().add(c);
- pack();
- setVisible(true);
- }
-
- public void actionPerformed(ActionEvent evt) {
- Object source = evt.getSource();
- setTitle(source.toString());
- System.out.println("val vaut "+c.getText());
- //repaint();
- //validate();
- }
-
- public static void main(String[] arguments) {
- Test2 frame = new Test2();
- }
- }
|
Le problème est que le nombre de boutons reste figé à 3, même si je change la valeur dans le champ de texte...
Quelqu'un a-t-il une idée?
Merci beaucoup...
Message édité par damcmoi le 28-08-2006 à 16:15:39