button i actionListener

0

próbuje za pomocą kliknięcia wywołać na panelu kilka textField'ów...
takie coś zrobiłem:

public class Main extends JFrame {

    JPanel glowny = new JPanel();
    JPanel gora = new JPanel();
    JPanel dol = new JPanel();
    JButton b = new JButton("klik");
    JTextField[] tx = new JTextField[8];

    class Wczytaj implements ActionListener {

        public void actionPerformed(ActionEvent e) {
            if (e.getSource() == b) {
                for (int i = 0; i < tx.length; i++) {
                    tx[i] =  (JTextField) gora.add(new JTextField("area: " + i));
                }
            }
        }
    }

    public Main() {


        gora.setLayout(new GridLayout(0, 1));
        b.addActionListener(new Wczytaj());
        dol.add(b);
        glowny.add(gora);
        glowny.add(dol);
        glowny.setLayout(new GridLayout(0, 1));
        add(glowny);


    }

    public static void main(String[] args) throws IOException {
        SwingUtilities.invokeLater(new Runnable() {

            public void run() {
                Main mn = new Main();
                mn.setVisible(true);
                mn.setSize(500, 500);
                mn.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
            }
        });



    }
} 

Jednakże nie hula :/

0
for (int i = 0; i < tx.length; i++) {
	tx[i] =  (JTextField) gora.add(new JTextField("area: " + i));
	tx[i].setOpaque(true);
}
gora.revalidate();

Twoje pola tekstowe muszą być opaque = true, no i daj revalidate, tutaj znajdziesz więcej http://www.javakb.com/Uwe/Forum.aspx/java-gui/5706/Adding-removing-components-after-container-has-been-setVisible

0

revalidate....tego mi brakowało :)

ja ciągle pisałem repaint'a :/

Dzięki...pomogło :)

1 użytkowników online, w tym zalogowanych: 0, gości: 1