Olá pessoal, gostaria de saber como faço para desabilitar todos os componentes que estão inseridos dentro de um JPanel de forma dinâmica, sem ter que varrer todos os seus componentes desabilitando um a um, brigado!
Eu me lembro que isso já foi discutido aqui no fórum. De qualquer maneira, tente o seguinte:
Component[] c = seuJPanel.getComponents();
for (int i = 0; i < c.length; i++) {
if (c instanceof JTextField) {
// faz algo com o JTextField...
// (desabilitar, por exemplo)
}
}
Eu já tentei fazer isso que vc disse:
jPanel1.setRequestFocusEnabled(false);
Component[] c = jPanel1.getComponents();
for (int i = 0; i < c.length; i++)
c[i].setEnabled(true);
Só que não dá pelo seguinte, estamos usando o JDeveloper e fazendo conexão com banco, dái quando apertamos no botão next ele redesenha a tela e habilita denovo, eo sistema é grande e não queríamos ter que pra cada painél fazer isso, não tem uma maneira mais econômica, em termos de código?
Hmmm… não conheço o JDeveloper! Não tem como vc rastrear o código e inserir o código para habilitar/desabilitar os componentes após o redesenho do Container?