Prezados,
após longa pesquisa para implementar um JTable, cheguei num ponto que preciso de ajuda.
Preciso simplesmente recuperar os valores da linha que eu selecionar e armazenar em alguma estrutura(array, vetor, qq coisa) e depois mostrar esses dados nos campos da tela, ou seja, o problema está em pegar os dados da linha selecionada.
Já fui em dezenas de fóruns e não consegui implementar como recuperar os valores da linha.
Li em algum lugar que há outra implementação pra não ter tantos métodos vazios, como abaixo:
class TableHandler implements MouseListener{
@Override
public void mouseClicked(MouseEvent e) {
if (e.getButton() == MouseEvent.BUTTON1 && e.getClickCount() == 2) {
JDialog.setDefaultLookAndFeelDecorated(true);
JOptionPane.showMessageDialog(null, "Clicou com botão esquerdo", "Atenção", JOptionPane.ERROR_MESSAGE);
//O evento funciona <------------------------
//Como recuperar os dados da linha selecionada?
}
@Override
public void mouseEntered(MouseEvent e) {
// TODO Auto-generated method stub
}
@Override
public void mouseExited(MouseEvent e) {
// TODO Auto-generated method stub
}
@Override
public void mousePressed(MouseEvent e) {
// TODO Auto-generated method stub
}
@Override
public void mouseReleased(MouseEvent e) {
// TODO Auto-generated method stub
}
}
tabela = (DefaultTableModel)jTableAgenda.getModel();
tabela.setRowCount(0);
if(!listaAgenda.isEmpty()){
Iterator<Agenda> it = listaAgenda.iterator();
while(it.hasNext()){
Agenda agenda = (Agenda) it.next();
int codHor = agenda.getCodHorario();
Horario horario = TelaLogin.dBServices.obterHorarioPorChave(codHor);
Cliente cliente = TelaLogin.dBServices.obterClientePorChave(agenda.getCodCliente());
Servicos servico = TelaLogin.dBServices.obterServicosPorChave(agenda.getCodServ());
String situacao = agenda.getSituacao();
String dataAgen = DateUtil.format(agenda.getDataAg());
Vector<Object> elementos = new Vector<Object>();
elementos.add(dataAgen);
elementos.add(horario);
elementos.add(cliente);
elementos.add(servico);
elementos.add(situacao);
tabela.insertRow(0,elementos);
}
}
Agradeço a atenção.


