• 0
Sign in to follow this  
edsouzza

CheckBox criado dinamicamente com checked = true não insere o nome no ArrayList

Question

Pessoal, a ideia é que quando o usuário escolher um campo identificado no checkbox o sistema deverá inserir o texto do checkbox no ArrayList. Mas esta pegando apenas o ultimo nome do ultimo checkbox.

public void listarOpcoesDeCampos() {
//para manipular o arrayList de campos voce dever criar outro arrayList para recebe-lo e assim com lst.get(0) chamar o campo desejado
lstCamposRetornados = retornarNomesCampos(); //retornando o codigo -> lstCamposRetornados.get(0) -> este procedimento me da acesso a qdeColunas tb

    //definindo o posicionamento dos checksbox dos campos
    int pos_coluna = 50, pos_linha = 40, tam_linha = 250, alt_linha = 30;

    for (int i = 0; i < qdeColunas; i++) {
        //criando e mostrando um checkbox com o nome da coluna da tabela
        chk = new JCheckBox();
        chk.setBounds(pos_coluna, pos_linha, tam_linha, alt_linha);
        c.add(chk);
        c.repaint();
        chk.setText(retornarNomesCampos().get(i));         //setando o nome da coluna no checbox            
        
        //registrando o objeto que sofrerá ação
        chk.addActionListener(this);
        
        //se posicionando para criacao do proximo checkbox
        pos_coluna = 50;
        pos_linha = pos_linha + 20;
    }
           
}
@Override
public void actionPerformed(ActionEvent e) {
lstListaCampos.add(chk.getText());
}

Fiz um laço for para visualizar o que a lista contem e percebi que esta pegando somente o último ítem

saída atual:
campo OBS
campo OBS

A saida desejada é:
campo CODIGO
campo OBS

Ou seja no ArrayList deverá conter apenas os ítens(checkbox) selecionados.
 

Share this post


Link to post
Share on other sites

0 answers to this question

Recommended Posts

There have been no answers to this question yet

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Sign in to follow this