Como resgatar dados de uma linha em Jtable[resolvido]

6 respostas
Marcus_Java

Boa Tarde amigos,

Vou logo ao problema, :wink:

tenho um resultado de uma consulta em uma JTable

como faço para resgatar de uma linha dados q eu clicar com o mouse?
mais tem q ser dados da linha inteira.

se alguem tiver um site pra me recomendar… por favor me passe, :wink:

desde ja grato :slight_smile:

6 Respostas

Nicolas_Fernandes

Olá, Marcus!

Cara, pegue, da coluna ID dessa linha, o valor do ID do objeto.
Depois, faça uma consulta no banco buscando por esse ID!
Assim você terá o objeto que procura.

[]'s

Marcus_Java

sim e issu q eu quero fazer Nicolas

Mais quero saber como resgato o ID dessa linha clicando com o mouse sobre ela

alguem tem um modelo ou codigo para me mostrar??

Marky.Vasconcelos

Voce tem essa opção ou entao seu TableModel retornar um Objeto do tipo que voce quer de acordo com a linha.

Da uma olhada em como NÃO usar DefaultTableModel se é o que voce esta fazendo.
http://www.guj.com.br/posts/list/132698.java#714736

Marcus_Java

valews marK
vou estudar melhor esse lance q vc me passou
ja vi q todos os GUJnautas usam esse

table.addMouseListener(new MouseListener() { public void mouseClicked(MouseEvent e) { String i=(String.valueOf(table.getSelectedRow())); int j=Integer.parseInt(i); SQL=(String.valueOf(table.getValueAt(j,0))); System.out.print(SQL); } }

Nicolas_Fernandes

Mark_Ameba,

Qual é a desvantagem em usar o DefaultTableModel, já que parece que você o odeia?! hehe

[]'s

Marky.Vasconcelos

Motivos (Copiado do ViniGodoy):

  1. Consome o dobro de espaço em memória, uma vez que os dados do seu banco são efetivamente copiados para o modelo;
  2. A necessidade de copiar dados também torna a carga dos dados mais lenta;
  3. Deixa o código mais rebuscado desnecessariamente;
  4. Exige casts, o que torna o código inseguro;
  5. Trabalha com valores, e não com objetos. Num model próprio, você pode ter um get() que retorna diretamente o objeto de sua classe;
  6. Não permite reuso.
Criado 17 de setembro de 2009
Ultima resposta 18 de set. de 2009
Respostas 6
Participantes 3