Criando Grupos

2 respostas
K

Boa noite !

Existe alguma maneira de colocar alguns objetos em um mesmo grupo para que, ao trocar uma propriedade deste grupo, todos os objetos tambem tenham esta mesma propriedade alterada ?
Exemplo : Vários JTextField pertencerem a um grupo onde, trocando a propriedade focusAble do grupo, todos eles tenham esta mesma propriedade alterada ?

Um abraço a todos

Kebe

2 Respostas

tluisrs

Opa.

Pelo que olhei, os Containers possuem o método getComponents(), que retorna um array com os componentes deste container.

Minha recomendação. Agrupe todos os componentes que você deseja mudar alguma propriedade de uma vez. Depois itere por esses componentes, ou testando se é instância de algo ou já fazendo o casting e mudando a propriedade.

public static void main(String[] args) {
    JPanel painel = new JPanel();
   
    painel.add(new JTextField(20);
    painel.add(new JTextField(20);
    painel.add(new JTextField(20);

    Component[] componentes = painel.getComponents();
    for (int i = 0; i < componentes.length; i++) {
        if (componentes[i] instanceof JTextField) {
            JTextField.setEnable(false);
        }
    }

}

Testa depois.

K

Obrigado pela dica parceiro…

Criado 27 de agosto de 2007
Ultima resposta 3 de set. de 2007
Respostas 2
Participantes 2