Pessoal to quebrando a cabeça aqui, sou iniciante em java e to com um probleminha relacionado ao Date.
no meu Bean e no meu banco de dados eu tenho o dia que esta como Date nos dois.
o que aconteceu é que no meu mousecliked eu nao consigo pegar a data da linha e coluna selecionadas
Este é o meu metodo para preencher a Jtable
[code]
public void preencher_jtable() {
tblKM.getColumnModel().getColumn(0).setPreferredWidth(40);
tblKM.getColumnModel().getColumn(1).setPreferredWidth(50);
tblKM.getColumnModel().getColumn(2).setPreferredWidth(50);
tblKM.getColumnModel().getColumn(3).setPreferredWidth(80);
tblKM.getColumnModel().getColumn(4).setPreferredWidth(80);
tblKM.getColumnModel().getColumn(5).setPreferredWidth(80);
tblKM.getColumnModel().getColumn(6).setPreferredWidth(80);
tblKM.getColumnModel().getColumn(7).setPreferredWidth(80);
DefaultTableModel modelo = (DefaultTableModel) tblKM.getModel();
modelo.setNumRows(0);
try {
sessao = fabrica.openSession();
lista_km = sessao.createQuery(listar + ordenacao).list();
tamanho_lista = lista_km.size();
String dados = "";
for (int i = 0; i < tamanho_lista; i++) {
Quilometragem km = lista_km.get(i);
modelo.addRow(new Object[]{km.getId(), km.getDia(),km.getMes(),
km.getManha(), km.getAlmoco(), km.getVolta_almoco(),
km.getTarde(), km.getTotal_km_dia()});
}
if (!lista_km.isEmpty()) {
posicao_atual = 0;
Quilometragem km = lista_km.get(0);
tfId.setText("" + km.getId());
tfDia.setText(""+ km.getDia());
jcMes.setSelectedItem(km.getMes());
tfManha.setText("" + km.getAlmoco());
tfSAlmoco.setText("" + km.getAlmoco());
tfCAlmoco.setText("" + km.getVolta_almoco());
tfAtarde.setText("" + km.getTarde());
tblKM.setRowSelectionInterval(0, 0);
}
} catch (Exception erro) {
JOptionPane.showMessageDialog(null, "Erro ao listar no Tabela " + erro);
}
// sessao.createQuery("SUM(total_km_dia) FROM quilometragem GROUP BY mes");
}[/code]
ate ai funciona legal vai no banco faz a pesquisa usando as variaveis listar + ordenação que contem o meu HQL
mais no evento mouseclicked eu não consigo pegar a data e jogar nos JFormattedTextField correspondente, so os outros campos.
Evento mouseClicked na JTable
private void tblKMMouseClicked(java.awt.event.MouseEvent evt) {
int linha = tblKM.getSelectedRow();
posicao_atual = linha;
Quilometragem km = new Quilometragem();
km.setId(Integer.parseInt(tblKM.getValueAt(linha, 0).toString()));
km.setDia(tblKM.getValueAt(linha, 1).toString()); // aqui da erro!! ele espera uma string, mais o meu Dia é um Date... porem não consegui converter
km.setMes(tblKM.getValueAt(linha, 2).toString());
km.setManha(Integer.parseInt(tblKM.getValueAt(linha, 3).toString()));
km.setAlmoco(Integer.parseInt(tblKM.getValueAt(linha, 4).toString()));
km.setVolta_almoco(Integer.parseInt(tblKM.getValueAt(linha, 5).toString()));
km.setTarde(Integer.parseInt(tblKM.getValueAt(linha, 6).toString()));
km.setTotal_km_dia(Integer.parseInt(tblKM.getValueAt(linha, 7).toString()));
jcMes.setSelectedItem("" + km.getMes());
tfId.setText("" + km.getId());
tfDia.setText("" + km.getDia());
tfManha.setText("" + km.getManha());
tfSAlmoco.setText("" + km.getAlmoco());
tfCAlmoco.setText("" + km.getVolta_almoco());
tfAtarde.setText("" + km.getTarde());
tfKMDia.setText("" + km.getTotal_km_dia());
}
"
eu só quero conseguir pegar a o campo Dia “que é do tipo Date” que esta na linha selecionada e na coluna de posição 1 e jogar pro JFormattedTextField “tfDia”
acho que fazer uma conversão para string resolveria, porem eu nao consegui fazer da maneira correta ainda…
por isso quero ajuda.
Obrigado