FocusListener em um JTable

4 respostas
Hammer

tem como implementar essa classe para cada célula do JTable? se sim como?

mas se nao, como posso fazer isso?

4 Respostas

RaulCarlin

Implemente o focusListener no JTable e aí, quando ocorrer o evento que você dejesa (focusGained, focusLost) recupere a linha do seu JTable e faça o que quiser com as células dela… eu ACHO que é o único jeito.

Tem esse cara também, table.getCellEditor().addCellEditorListener().

Hammer

bem, eu tentei aq mas eu nao consegui, alguem pode me dar mais ajuda, tp um exemplo?

Hammer

nao kero ser chato, mas eh q nao estou conseguindo e kero dar um up aq pra se alguem ver dar uma ajuda.

A

Estou com o mesmo problema
meu odigo:

int qtdlinhas = jTable1.getRowCount() - 1;
        int x=0;
        while(x<qtdlinhas){
            jTable1.addFocusListener(new FocusListener(){   

                public void focusGained(FocusEvent arg0) {   
                    //ação desejada quando ganha o foco
                    int x = jTable1.getSelectedRow();
                    int y = jTable1.getSelectedColumn();
                    jTDescricao.setText(x + " linha tal ");
                   
                    }   

                public void focusLost(FocusEvent arg0){               
                    //ação desejada quando perde o foco   
                }   

            });

            x++;
        }

sei que o while eh desnecessario neste caso
mas ao inves de adicionar o focuslistener na jtable quero adicionar em todas as linhas existentes (por isso o while)
e ae, algum se habilita?
to atras disso a horas e nao consigo

**neste meu exemplo esta dando certo
porem tenho que clicar em uma linha e para dispara-lo novamente nao basta eu trocar o focu de linha
e sim tirar o focu da jtable e quando voltar sim ele age novamente…
quero troca de linha e executar novamente …

Criado 31 de maio de 2007
Ultima resposta 31 de jan. de 2012
Respostas 4
Participantes 3