Ivan
Ivan

Reputation: 30999

Creating JButtons in Java

I'm fairly new to Java and I've been having some difficulties with Swing. I'm trying to create a very simple GUI program which should be create a set of buttons but my code doesn't work.

Here's my code;

myPanel = new JPanel();

JButton myButton = new JButton("create buttons");
myButton.addActionListener(new ActionListener() {
    public void actionPerformed(ActionEvent e) {
        int val = Integer.parseInt(textfield.getText());
        for(int i = 0; i < val; i++) {
            JButton button = new JButton("");
            button.setText(String.valueOf(i));
            myPanel.add(button);
        }
    }
});

But nothing happens when I click to "create buttons" button. Can anyone tell me what I'm missing?

Upvotes: 2

Views: 646

Answers (2)

walters
walters

Reputation: 1467

You might have to invoke the validate method on the myPanel to get the contents of the GUI to update, after adding a button on the panel. Also consider the use of IDEs(Netbeans, Eclipse, IntelliJ Idea etc...), that's if it's necessary, for GUI building.

Upvotes: 0

Mike42
Mike42

Reputation: 397

You need to refresh panels that are already running with revalidate:

myPanel.revalidate()

Upvotes: 2

Related Questions