Java - Problema con TableRowSorter en JTable Java....

 
Vista:

Problema con TableRowSorter en JTable Java....

Publicado por joaquin (2 intervenciones) el 08/10/2014 21:03:56
hola... mi consulta es la siguiente:
estoy trabajando con un JTable.. utilizo TableRowSorter...
funciona perfecto, en cuanto a lo visual, es decir ordena, completa y muestra la tabla.
pero cuando necesito trabajar con los datos, vienen los problemas

llamo a un metodo..

public void eliminarseleccion(){


try{
DefaultTableModel modelo = (DefaultTableModel)table.getModel();

String eliminado=(String)modelo.getValueAt(table.getSelectedRow(),2)+" "+ (String)modelo.getValueAt(table.getSelectedRow(),1);

int c1=confirmar("Se eliminará a "+eliminado+" de los registros.\n¿Desea continuar?");
if(c1==0){


String ndelet=(String)modelo.getValueAt(table.getSelectedRow(),0);

String cons3="Delete from Socios where nsocio='"+ndelet+"'";

.......

lo que hace, es tomar el nombre de la fila seleccionada, ubicado en (table.getSelectedRow() , 2)...
luego llama al metodo "confirmar" que es un JOptionPane.
para eliminarlo de una base de datos SQL, tomo el dato ndelet, que es un dato unico por cada socio.
pero el nombre que toma de la tabla, no es el mismo que se ve. es como si devolviera el nombre de esa ubicacion, pero de la tabla original... como si se ordenara solamente la parte grafica...

alguna idea de como puedo solucionarlo???
desde ya muchas gracias...
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Problema con TableRowSorter en JTable Java....

Publicado por joaquin (2 intervenciones) el 08/10/2014 22:12:55
Ya lo solucione.... por si alguno le ocurrió lo mismo....
la solución es algo tonta.. pero bastante lógica.
en la linea:

String eliminado=(String)modelo.getValueAt(table.getSelectedRow(),2)+" "+ (String)modelo.getValueAt(table.getSelectedRow(),1);


el problema esta en "modelo.getValue...." , no debemos tomar el dato de nuestro DefaultTableModel, sino de nuestra tabla...

seria:

table.getValue(.... donde table es mi JTable
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar