Desabilitar componentes - RESOLVIDO

2 respostas
hjmarcon

Tenho um painel com vários JTextFields dentro.
Como faço para desabilitá-los ?
Mas somente os desse painel específico.
Agradeço a colaboração.

2 Respostas

nandobgi

Opa, blz?

Você pode fazer assim:

public void desabilitar(JPanel panel) {
    	
    	Component[] component = panel.getComponents();
    	
    	for (Component c : component) {
    		
    		if ( c instanceof JTextField) {
    			JTextField textField = (JTextField)c;
    			textField.setEnabled(true);
    		}
    	}
    }

Estou meio corrido e não testei mas a idéia é essa.
[ ]'s

hjmarcon

muito obrigado nadobgi
eu usei o codigo assim :

public void habilitaCampos(JPanel panel, boolean status) {
Component[] component = panel.getComponents();

for (Component c : component) {
    
    if ( c instanceof JTextField) {
	JTextField textField = (JTextField)c;
	if (status == true){
	    textField.setEnabled(true);
	}else{
	    textField.setEnabled(false);
	}
    }
}

testei o código na mesma classe, agora vou tentar fazer o codigo em outra classe, pra poder reaproveitar…
agradeço sua ajuda.
flw

Criado 27 de setembro de 2006
Ultima resposta 29 de set. de 2006
Respostas 2
Participantes 2