elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Únete al Grupo Steam elhacker.NET


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  Java
| | | |-+  Como modificar una celda de una tabla JTable
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Como modificar una celda de una tabla JTable  (Leído 3,252 veces)
NaTxosS

Desconectado Desconectado

Mensajes: 31


Ver Perfil
Como modificar una celda de una tabla JTable
« en: 29 Septiembre 2014, 12:41 pm »

Como puedo modificar una fila o celda con los datos de un JTextField?

Esto es lo que tengo ahora, pero el problema empieza en la linea "fastFood.getTblClientes().setValueAt(apellido1, row, 0);" , así que supongo o que no se hace con el setValueAt, o que no puedo poner un String como primer parámetro:

public void modificarCliente() {
       
        String apellido1 = editaCliente.getTxtApellido1Editar();
        String apellido2 = editaCliente.getTxtApellido2Editar();
        String nombre = editaCliente.getTxtNombreEditar();
        int row = fastFood.sacarFila();
        fastFood.getTblClientes().setValueAt(apellido1, row, 0);
        fastFood.getTblClientes().setValueAt(apellido2, row, 1);
        fastFood.getTblClientes().setValueAt(nombre, row, 2);
    }

Gracias de antemano. saludos


En línea

La mejor manera de hacerse optimista es pisando una buena mielda.
Chuidiang

Desconectado Desconectado

Mensajes: 161



Ver Perfil WWW
Re: Como modificar una celda de una tabla JTable
« Respuesta #1 en: 30 Septiembre 2014, 20:04 pm »

Entiendo que "el problema empieza en la linea ..." quiere decir que llamas a eso y no se actualiza el JTable.

En principio está bien, si getTblClientes() te está devolviendo el JTable que quieres modificar. Supongo también que no estás usando un TableModel tuyo propio, sino que usas el que el JTable tiene por defecto.

Si no te funciona, el error debe estar en otro lado. Suele ser un error habitual (no sé si eres principiante) el instanciar sin querer el JTable varias veces y modificar el que no está visible.

Se bueno.


En línea

NaTxosS

Desconectado Desconectado

Mensajes: 31


Ver Perfil
Re: Como modificar una celda de una tabla JTable
« Respuesta #2 en: 1 Octubre 2014, 11:19 am »

Se ha notado que soy novato,  ;D. Puede que sea lo que dices, pero la excepción me sale esto:
Exception in thread "AWT-EventQueue-0" java.lang.ArrayIndexOutOfBoundsException: -1
   at java.util.Vector.elementData(Vector.java:734)
.
.
.
.

y haciendo un Debug veo que row vale -1, y esta seleccionada una fila de la tabla (a no ser que al hacer clic en el botón Modificar se pierda la selección, no se), entonces te pregunto, ¿esto que te comento es debido al error que me comentas que he podido cometer? ó ¿es otro error diferente?

Muchas gracias.


PD: la JTable si es la que viene por defecto
     
       sacarFila es un método que tengo en la ventana principal y que uso en otros métodos, la tengo así:

public int sacarFila() {
       
        return row = tblClientes.getSelectedRow();
    }
En línea

La mejor manera de hacerse optimista es pisando una buena mielda.
Chuidiang

Desconectado Desconectado

Mensajes: 161



Ver Perfil WWW
Re: Como modificar una celda de una tabla JTable
« Respuesta #3 en: 1 Octubre 2014, 20:29 pm »

Difícil contestar. Esto

int row = fastFood.sacarFila();

está devolviendo -1, sin ver el código de sacarFila().

Se bueno.
En línea

NaTxosS

Desconectado Desconectado

Mensajes: 31


Ver Perfil
Re: Como modificar una celda de una tabla JTable
« Respuesta #4 en: 1 Octubre 2014, 21:33 pm »

Te lo puse debajo., en la pd:
En línea

La mejor manera de hacerse optimista es pisando una buena mielda.
NaTxosS

Desconectado Desconectado

Mensajes: 31


Ver Perfil
Re: Como modificar una celda de una tabla JTable
« Respuesta #5 en: 6 Octubre 2014, 19:04 pm »

Ya esta solucionado, el problema estaba en como accedía a la tabla:

    public void modificarCliente() {
       
        String apellido1 = editaCliente.getTxtApellido1Editar();
        String apellido2 = editaCliente.getTxtApellido2Editar();
        String nombre = editaCliente.getTxtNombreEditar();
       
        int fila = editaCliente.getFastFoodCompany().sacarFila();
       
        editaCliente.getFastFoodCompany().getTblClientes().setValueAt(apellido1, fila, 0);
        editaCliente.getFastFoodCompany().getTblClientes().setValueAt(apellido2, fila, 1);
        editaCliente.getFastFoodCompany().getTblClientes().setValueAt(nombre, fila, 2);
        editaCliente.getFastFoodCompany().getPanelTabla().setViewportView(editaCliente.getFastFoodCompany().getTblClientes());
       
        limpiarFormulario();
    }

Muchas Gracias Chuidiang, SAludos
En línea

La mejor manera de hacerse optimista es pisando una buena mielda.
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Cambiar el color de una celda en un JTable con Java
Java
rigoxls 0 6,662 Último mensaje 19 Enero 2010, 02:09 am
por rigoxls
Como escribir en una celda de Excel desde otra celda
Software
javier234- 4 3,366 Último mensaje 22 Junio 2012, 21:57 pm
por maxtextla
background dentro de la celda de una tabla html.
Desarrollo Web
4nc3str4l 0 1,823 Último mensaje 28 Agosto 2012, 11:51 am
por 4nc3str4l
como modificar Jtable
Java
nelmaster_vc 3 6,135 Último mensaje 5 Agosto 2016, 06:28 am
por DIANA KARINA HM
Colocar Boton de Modificar en celda de JTable
Java
Fernandez2494 1 5,382 Último mensaje 3 Octubre 2018, 19:04 pm
por rub'n
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines