É o seguinte, eu tenho um array de n itens… para cada item eu crio um JPanel e um JCheckBox através de um loop! Acontece q eu quero, ao apertar um botão, saber qual check box q esta selecionado… como faço isso?
Eu inicializei um array de checkbox do tamanho do array de itens… entao eu coloco cada check desse array em cada painel… será q eu viajei?
O código do meu loop:
[code]//loop por cada produto selecionado
for(i=1; i<arrayResultado.size();i++)
{
// criando um painel para cada item
painel2 = new JPanel();
painel2.setPreferredSize ( new Dimension (200, 200) );
painelEspecificacao.setBackground(Color.GRAY);
painelSaida.add(painel2);
Voce pode utilizar um ActionListener e adiciona-lo em todos os checkboxes.
exemplo:
Crie um unico listener
/*Criando o action listener*/
ActionListener checkListener = new ActionListener(){
public void actionPerformed(ActionEvent evt){
/*Para saber qual o component foi selecionado*/
Component compSelectionado = evt.getSource();
...
}
};
Adicione-o nos checkboxes
for(i=1; i<arrayResultado.size();i++)
{
// criando um painel para cada item
painel2 = new JPanel();
painel2.setPreferredSize ( new Dimension (200, 200) );
painelEspecificacao.setBackground(Color.GRAY);
painelSaida.add(painel2);
// inserindo checkbox no painel
checkBox = (JCheckBox)arrayCheck.get(i-1);
/*ADICIONANDO O LISTENER NO CHECKBOX*/
checkBox.addActionListener(checkListener);
painel2.add( checkBox );