Having a different action for each button dynamically created in a loop
Posted
by Oliver
on Stack Overflow
See other posts from Stack Overflow
or by Oliver
Published on 2010-03-12T01:55:23Z
Indexed on
2010/03/12
1:57 UTC
Read the original article
Hit count: 306
Hi, use this website a lot but first time posting. My program creates a number of buttons depending on the number of records in a file. E.g. 5 records, 5 buttons.
The buttons are being created but i'm having a problem with the action listener.
If add the action listener in the loop every button does the same thing; but if I add the action listener outside the loop it just adds the action listener to last button.
Any ideas?
Here is what I have code-wise (I've just added the for loop to save space):
int j=0;
for(int i=0; i<namesA.size(); i++)
{
b = new JButton(""+namesA.get(i)+"");
conPanel.add(b);
conFrame.add(conPanel);
b.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent ae2){
System.out.println(namesA.get(j));
}
}});
j++;
}
Much Appreciated
© Stack Overflow or respective owner