Suma entre celdas del JTable

saronai
07 de Noviembre del 2005
Hola.

Alguien me podría echar una mano con el problema siguiente? Quisiera sumar dos columnas de la misma fila entre si y poner el resultado en otra de las columnas de la misma fila. Tambíen quisiera sumar todas las celdas de la misma columna y poner el resultado en un textfield que se encuentra fuera del JTable.

Ayudarme porfa

gracias


chuidiang
07 de Noviembre del 2005
Hola:

Hereda de DefaultTableModel. Redefine el método getColumnCount() para que devuelva el número de columas de datos que quieres más la de la suma. Redefine el método getValueAt() para que si es la columna de la suma, devuelva la suma. Luego simplemente crea el JTable asi

DefaultTableModelHijo modelo = new DefaultTableModelHijo();
JTable tabla = new JTable(modelo);

Mete datos directamente en el modelo con el método setValueAt(). No hace falta que metas las sums, porque se calculan en el metodo getValueAt() que has redefinido.

Para la suma suscribete en tu modelo a los cambios con el método addTableModelListener(). Cada vez que se cambie algo en el modelo, te avisarán al suscriptor. En él tienes que recalcular la suma que quieres poner fuera.

Se bueno