Estou tentando implementar um JTable que permite em apenas uma coluna edição e atualização no banco de dados, com isso descobri que após a edição de uma célula no JTable, é chamado o método setValueAt do TableModel, até ai perfeito, consegui implementar e realmente funciona, o meu problema esta agora no fato de eu ter sobreposto o metodo que deixou de funcionar, ou seja, as alterações/edições que eu faço na JTable não aparecem mais no JTable.
O que preciso fazer para que o método sobreposto continue fazendo o que fazia antes?
Segue o código implementado abaixo:
private DefaultTableModel model = new DefaultTableModel() {
public void setValueAt(Object aValue, int rowIndex, int columnIndex) {
System.out.println("Alterei a linha " + rowIndex + " na coluna " + columnIndex + " o seguinte: (" + value + ")");
//Aqui vai o código para salvar na BD
}
};
tente deixar seu método assim (olhe a última instrução)
private DefaultTableModel model = new DefaultTableModel() {
public void setValueAt(Object aValue, int rowIndex, int columnIndex) {
System.out.println("Alterei a linha " + rowIndex + " na coluna " + columnIndex + " o seguinte: (" + value + ")");
//Aqui vai o código para salvar na BD
fireTableCellUpdated(row, column);
}
};
Depois de vc salvar os dados, tentar chamar o método original, que já deve ter tudo pronto pra fazer o que vc quer.
private DefaultTableModel model = new DefaultTableModel() {
public void setValueAt(Object aValue, int rowIndex, int columnIndex) {
System.out.println("Alterei a linha " + rowIndex + " na coluna " + columnIndex + " o seguinte: (" + value + ")");
//Aqui vai o código para salvar na BD
super.setValueAt(aValue, rowIndex, columnIndex);
}
};