Foros del Web » Programación para mayores de 30 ;) » Java »

JTable + tableChangedListener ¿?

Estas en el tema de JTable + tableChangedListener ¿? en el foro de Java en Foros del Web. Hola! Tengo una JTable en la cual despliego informacion. Me gustaria saber si existe alguna manera de lanzar algun evento cada vez que la tabla ...
  #1 (permalink)  
Antiguo 07/05/2011, 23:32
 
Fecha de Ingreso: enero-2010
Mensajes: 88
Antigüedad: 14 años, 3 meses
Puntos: 2
JTable + tableChangedListener ¿?

Hola!

Tengo una JTable en la cual despliego informacion. Me gustaria saber si existe alguna manera de lanzar algun evento cada vez que la tabla ha sido modificada en algun valor.

Osea, mi tabla permite modificar valores. Me gustaria que cada vez que el usuario cambia un valor dentro de la tabla, crear un evento. ¿Hay alguna forma de hacer eso?

De antemano muchas gracias.
  #2 (permalink)  
Antiguo 08/05/2011, 04:21
Avatar de chuidiang
Colaborador
 
Fecha de Ingreso: octubre-2004
Mensajes: 3.774
Antigüedad: 19 años, 7 meses
Puntos: 454
Respuesta: JTable + tableChangedListener ¿?

Pídele al JTable el getModel() y ese TableModel genera eventos cada vez que se modifica el contenido de la tabla. Sólo tienes que suscribirte a ellos usando los métodos addTableModelListener(). Los TableModelEvent que recibes contienen la información de qué ha cambiado http://download.oracle.com/javase/1....odelEvent.html

Se bueno.
__________________
Apuntes Java
Wiki de Programación
  #3 (permalink)  
Antiguo 08/05/2011, 09:50
 
Fecha de Ingreso: enero-2010
Mensajes: 88
Antigüedad: 14 años, 3 meses
Puntos: 2
Respuesta: JTable + tableChangedListener ¿?

Lo he intentado de varias formas y no lo consigo. Mira:

Código:
tablaEditable.getModel().addTableModelListener(new Nota(tablaEditable));

public class Nota implements TableModelListener {
    JTable table;

    Nota(JTable table) {
        this.table = table;
    }

    public void tableChanged(TableModelEvent e) {
        switch (e.getType()) {
          case TableModelEvent.UPDATE:
                JOptionPane.showMessageDialog(null, "Bien");
            break;
            }
        }
    }
Y no consigo que se lance el dichoso evento al editar la tabla.

Etiquetas: jtable
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 11:52.