Jump to content
edsouzza

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

Recommended Posts

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

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By Alisson Hoepers
      Olá pessoal! Para mostrar a lista de um cadastro no meu sistema, eu populo a consulta em um DTO conforme abaixo. Minha pergunta é: Existe uma forma mais simples de popular a consulta na lista do DTO de forma mais simples?
       
      public List<ObjetoDTO> find(Query query) {     @SuppressWarnings("unchecked") List<Object[]> queryResult = query.getResultList(); List<ObjetoDTO> list = new ArrayList<>(); if (queryResult.isEmpty() == false) { for (Object[] item : queryResult) { ObjetoDTO dto = new ObjetoDTO(); dto.setId((Integer) item[0]); dto.setTitulo((String) (item[1])); dto.setDescricao((String) (item[2])); list.add(dto); } } return list; }  
    • By NaPraia
      Beleza pessoal?
       
      seguinte, tenho que desenvolver uma aplicação Java para me comunicar com outro sistema, via Adapter.
      Qual é a melhor forma de fazer isso?
       
      Eu comecei a desenvolver no Eclipse, porém, quando abri o projeto, não coloquei nem com opção de Webservice nem de Maven
       
      E outra dúvida, se instala o Java em servidor? um cara falou isso aqui mas não sei se está zuando.
    • By Luiz Henrique de Sousa
      Estou utilizando rich faces e seu componente JQuery, para realizar formatação de campos decimais, estou utilizando o maskMoney e atribui uma precisão de 3 casas no meu input text, e tenho um campo disabled que é booleano, ele é acionado caso tenha mais coisas associadas a outro item no form abaixo, mesmo sabendo que a função disabled é apenas vísivel ela não faz nada de diferente, quando a minha função disabled é acionada tem como eu tirar as casas decimais dela.
      Fiz dessa forma abaixo:
       
      <f:facet name="header"> <h:outputLabel value="#{messages.conversion}"/> </f:facet> <h:inputText id="fldConversion" value="#{row.vlConversion}" label="#{messages.conversion}" maxLength="25" disabled="#{defaultMBean.canDisabledConversion(row)}"> <a4j:ajax event="change" immediate="true" render="@all, partnerItem, dataModel"/> <f:converter converterId="javax.faces.BigDecimal"/> <f:validateLength maximum="30" /> </h:outputText> <rich:jQuery selector="#fldConversion" query="maskMoney({decimal:''.'',allowNegative:false, showSymbol:false, thousands: '''',precision: 3})"/> E criei esse método para quando estiver desativado o campo:
       
      public BigDecimal canDisableConversionE(TypeDTO row) { BigDecimal r = row.getConversionValue().setScale(0, RoundingMode.HALF_EVEN); System.out.println(r); return r; } public Boolean canDisableConversion(TypeDTO row) { if (row.getId() == 1L && !canDisableConversionE()) { return false; } if (IsWeight(row.getId())) { return true; } return getConfigFacade().canDisableConversionE(row.getConversionValue()); }  
    • By NaPraia
      Olá, estou tentando gerar um arquivo em PDF, mas ele já está dando erro na primeira linha, no comando de import
       
      import com.itextpdf.text.Document; import com.itextpdf.text.Paragraph; import com.itextpdf.text.pdf.PdfPCell; import com.itextpdf.text.pdf.PdfPTable; import com.itextpdf.text.pdf.PdfWriter;     public class Arquivo2704 {                 public static void main (String[] args) {                               Document document = new Document();               try {                     PdfWriter.getInstance(document, new FileOutputStream("C:\\a1.pdf"));                     document.open();                     document.add(new Paragraph("Hello World"));                 }                  catch(DocumentException de) {                     System.err.println(de.getMessage());                 }                  catch(IOException ioe) {                     System.err.println(ioe.getMessage());                 }                  //document.close();    } }
      Alguém pode me ajudar?
      obrigado            
    • By helkton
      oi galera, como criar uma listagem de mesas disponíveis ou produtos cadastrados pra uma lanchonete e restaurante
       
      tipo esta imagem abaixo no caso é de um hotel, mais o esquema seria o mesmo, só mudando o ramo de atividade rsss
       

×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.