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

Cambiar valor de celda mientras se edita

Estas en el tema de Cambiar valor de celda mientras se edita en el foro de Java en Foros del Web. Hola, Tengo una jtable en swing, que permite que se editen las celdas por el usuario. Algunas celdas se rellenan con eventos, al pulsar un ...
  #1 (permalink)  
Antiguo 04/02/2015, 02:44
 
Fecha de Ingreso: mayo-2013
Mensajes: 41
Antigüedad: 11 años, 5 meses
Puntos: 0
Cambiar valor de celda mientras se edita

Hola,

Tengo una jtable en swing, que permite que se editen las celdas por el usuario. Algunas celdas se rellenan con eventos, al pulsar un botón y necesito que el usuario pueda borrar el contenido completo al pulsar el retroceso cuando esté posicionado en una con texto.

Consigo determinar la celda en la que está posicionada con un listener, pero como la celda está en modo edición si hago un

Código:
celda.setValueAt("",fila,columna);
No me vacía el contenido.

¿Como puedo hacer este comportamiento?

Estoy un poco perdido, cualquier ayuda es bienvenida.

Gracias
  #2 (permalink)  
Antiguo 04/02/2015, 13:57
Avatar de HackmanC  
Fecha de Ingreso: enero-2008
Ubicación: Guatemala
Mensajes: 1.817
Antigüedad: 16 años, 9 meses
Puntos: 260
Sonrisa Respuesta: Cambiar valor de celda mientras se edita

Hola,

Cita:
Iniciado por ivanalberquilla Ver Mensaje
...
¿Como puedo hacer este comportamiento?
...
Posiblemente, tendrías que crear un CellEditor personalizado, existen dos estados que se pueden manipular en diferente momento. Cuando no estas editando puedes modificar el funcionamiento (lo que despliega la columna) con un CellRenderer.

Cuando sí estás editando puedes modificar el comportamiento del Component que usa el JTable para editar los datos (normalmente un JTextField), pero para eso tienes que crear un CellEditor personalizado (adicionalmente es preferiblemente extender un JTextField), y mantener una referencia a ese JTextField para cuando necesites modificar su comportamiento.

Por ejemplo:
http://www.chuidiang.com/java/tablas...ablaeditor.php

Si solo deseas borrar el contenido completo y cancelar la acción, regresando al estado de no editar podrías probar a usar cancelCellEditing, como indica el vínculo.

Saludos,
  #3 (permalink)  
Antiguo 05/02/2015, 03:54
 
Fecha de Ingreso: mayo-2013
Mensajes: 41
Antigüedad: 11 años, 5 meses
Puntos: 0
Respuesta: Cambiar valor de celda mientras se edita

OK, muchas gracias, voy a probar con esto a ver.

Etiquetas: celda, jtable, mientras, valor
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 10:46.