Qual e como setar evento similar ao "onchange" num JTable?

3 respostas
thimor

Ola,

To fazendo um programa Desktop e estou com uma pequena duvida. Tenho uma JTable e em uma das colunas eu digito valores e esses precisam refletir em um objeto. Como sou mais acostumado com WEB temos um evento onchange que eu checo e excecuto a acao. Na JTable eu vi um PropertyChangeListener, mas esse não funcionou.

jTable1.getColumnModel().getColumn(3).addPropertyChangeListener(new PropertyChangeListener() {

            public void propertyChange(PropertyChangeEvent evt) {
                codigo do meu evento;
            }
        });

Alguem sabe se tem um evento apropriado e como este deve ser usado? Acredito que sim pq em JSF tem um é muito simples de ser usado.
Agradeço de já as respostas.

3 Respostas

ViniGodoy

Sempre que um JTable é atualizado, ele informa isso para o TableModel. No seu TableModel, você deve ter uma lista de objetos.
E aí vc atualiza seu objeto.

Por exemplo, um TableModel de livros poderia ser assim:
http://www.guj.com.br/posts/list/132698.java#714736

thimor

ViniGodoy:
Sempre que um JTable é atualizado, ele informa isso para o TableModel. No seu TableModel, você deve ter uma lista de objetos.
E aí vc atualiza seu objeto.

Por exemplo, um TableModel de livros poderia ser assim:
http://www.guj.com.br/posts/list/132698.java#714736

isso eu sei. mas o que eu quero fazer eh na hora que eu alterar a celula da coluna o objeto associado a ela ja seja alterado. Ou so ira funcionar se depois de tudo preenchido eu ter um botao que percorra a coluna pegando os valores e setando no objeto?

ViniGodoy

Sim, funciona sim… mas primeiro entende direito como funciona o TableModel, pq se vc tivesse entendido, você não teria me perguntado isso…

Criado 17 de outubro de 2009
Ultima resposta 17 de out. de 2009
Respostas 3
Participantes 2