JAVA - Selecionar JCheckBox por intervalo de valores em uma JTextField

Olá, Por gentileza, alguém poderia me ensinar como posso selecionar os JCheckBox referente as Filiais (Conforme imagem abaixo), com base no JTextField que está acima?

No caso, se a pessoa colocar de “4-10” e apertasse “TAB” ou “Enter” ele selecionaria automaticamente as CheckBox no intervalo pelo numero da filial

Desde já agradeço

Timoteo_Seibel, bom dia.

Meu conhecimento em java é limitado, estudo programação a 2 anos, o que posso tentar te ajudar é sobre a lógica que utilizaria para fazer.

1ª - Eu criaria duas variáveis do tipo int para armazenar o valor do inicio e fim do intervalo, usando o método subString para extrair o valor do JtextField. Exemplo.:

int inicio = Integer.parseInt(JTextField.getText().substring(0));
int fim = Integer.parseInt(JTextField.getText().substring(0));

2ª - Dentro do seu JtextField basta inserir um evento, e depois manipular o código para selecionar os itens desejados.

1 curtida

Hmm, acho que entendi a lógica, vou ver o que consigo escrever e testar e posto o resultado aqui. Obrigado!

Blz, espero ter ajudado.

Consegui apenas selecionar os valores desejados, no caso ele só está imprimindo as filiais como texto, mas está buscando de forma correta. Ainda não consegui manipular o código pra selecionar os itens desejados, mas estou na pesquisa aqui pra conseguir

public void selecionar() {  
  String fil = TxtFilial.getText();
   
    if (fil.length() == 2) {
    String b = fil.substring(0,2);
    System.out.println(b);
    }
    
    if (fil.length() == 1) {
    String b = fil.substring(0,1);
    System.out.println(b);
    }
    
    if (fil.length() > 3) {
    String filial[] = fil.split("-");
    System.out.println(filial[0]);
    System.out.println(filial[1]);        
    }
    
    if (fil.length() == 3 || fil.length() > 5) {
    JOptionPane.showMessageDialog(null, "Filial Incorreta");         
    }     
}
1 curtida