[RESOLVIDO] JCheckBox e JTextField

7 respostas Resolvido
java
M

Bom dia!

Como eu faço para aparecer a caixa de texto -JTextField, somente quando a JCkeckBox for selecionada?

Ex: temos um JCheckBox e quando eu clicar, somente quando for selecionado, apareça a barra de texto.

PS: Sendo isto feito para 5 caixas de seleção e 5 caixas de texto

7 Respostas

Jonathan_Medeiros
Solucao aceita

No evento clicked do JChekBox você faz o seguinte código:

if (meucheckbox.isSelected()) {
    meucampotexto.setVisible(true);
}
M

Este é o código para ele aparece ao clicar na caixa de seleção.
Mas e para ele não aparecer? Só aparecer ao clicar na caixa de seleção.

Coloquei seu código mas ele ainda permaneceu ativo

Jonathan_Medeiros

Aí você tem que se ajudar também, só pegar as respostas prontas para seus problemas não vai te fazer aprender!

Veja bem, se setVisible(true) faz o campo ficar visível, então para ocultá-lo novamente teria que fazer o inverso concorda ?
Logo setVisible(false) faz com que o campo volte a ficar invisível.

M

Eu já tinha feito isto:

if (box1.isSelected()) {
text1.setVisible(true);

}   else {

text1.setVisible(false);

}

sendo que:

O código só irá começar a rodar quando eu clicar na caixa de seleção, mas quando eu inicio a programação ele permanece ativo. Entendeu?

Esta etapa de desaparece ao clicar funcionou, mas não ao iniciar a programação.

rodriguesabner

É só setar o campo de texto como falso, depois de init components.

Jonathan_Medeiros

Conforme o @rodriguesabner disse acima, basta passar o visible do campo como false lá no construtor da sua classe, abaixo do initComponents() .

Assim, quando a classe for executada, o campo iniciará como invisível, obedecendo posteriormente a visibilidade conforme os clicks do checkbox.

M

Obrigado @rodriguesabner e @Jonathan_Medeiros vocês são demais!!

Criado 22 de novembro de 2018
Ultima resposta 22 de nov. de 2018
Respostas 7
Participantes 3