Atualizar tela para radiobutton habilitar e desabilitar textfield?

4 respostas
fsfnit

Bom pessoal, a dúvida é a seguinte:

Tenho 6 buttonsGroups, cada um com 4 radios, e todos eles possuem os mesmos radios (mesmo value):

BtnGrp1: X o Y o Z o W o [ TextField ]

BtnGrp2: X o Y o Z o W o [ TextField ]

BtnGrp3: X o Y o Z o W o [ TextField ]

Quero criar um metodo, que ao se clicar no radiobtn W, habilite o textfield correspondente , e caso seja desmarcado, desabilite o mesmo textfield.

A dificuldade está em desabilitar o textfield.Pois os textfield´s vem disable na tela, ai clico no radio W, ele habilita, mas se eu desmarcar o W, ele continua habilitado.
Tentei trabalhar com o evento (Listener), mas o event.getsource não serve para comparar o boolean do isSelected do radio.
Como fazer isso funcionar de forma decente ? Tem que dar um “refresh” na tela ?
Obrigado desde já pela ajuda.

4 Respostas

andretco

olá !

vc colocou um else caso que não esteja selecionado o radiobutton???
ex:

public void itemStateChanged(ItemEvent ev) {
		
		
		if(ev.getSource() == this.actorCKB){

			if(this.actorCKB.isSelected()){
				this.actorLBL.setEnabled(true);
				this.actorCB.setEnabled(true);
				this.actorDepCKB.setEnabled(true);
			}
			else{ 
				this.actorLBL.setEnabled(false);
				this.actorCB.setEnabled(false);
				this.actorDepCKB.setEnabled(false);
			}
		}
}

espero ter ajudado em algo. até logo!

fsfnit

andretco:
olá !

vc colocou um else caso que não esteja selecionado o radiobutton???
ex:

public void itemStateChanged(ItemEvent ev) {
		
		
		if(ev.getSource() == this.actorCKB){

			if(this.actorCKB.isSelected()){
				this.actorLBL.setEnabled(true);
				this.actorCB.setEnabled(true);
				this.actorDepCKB.setEnabled(true);
			}
			else{ 
				this.actorLBL.setEnabled(false);
				this.actorCB.setEnabled(false);
				this.actorDepCKB.setEnabled(false);
			}
		}
}

espero ter ajudado em algo. até logo!

Coloquei o else sim.

andretco

tentou com o textfield[b].setEditable/b???

fsfnit

Sim.

Criado 12 de março de 2008
Ultima resposta 13 de mar. de 2008
Respostas 4
Participantes 2