
Obtener datos de un JTable especifico
Publicado por Israel Jara (1 intervención) el 27/01/2016 18:48:31
Hola a todos! Ojala me puedan ayudar con mi problema:
Tengo un bucle que me genera un numero determinado de TabbedPane y dentro de cada uno de ellos un JTable, el cual se llena automáticamente en base a información dentro de archivos de texto.
El problema esta cuando quiero obtener la información de un row. Sucede que al hacer click en cualquier row de cualquier tabla, me devuelve información correspondiente a la ultima tabla añadida en el bucle que mencione anteriormente y no los datos que realmente quiero
Dejo un extracto del codigo en donde genero los TabbedPane y las Tablas y donde luego intento acceder a los datos.
Creacion de componentes:
Obtener datos:
Saludos y gracias a cualquiera que se tome el tiempo de intentar ayudare
PD: Ademas de este problema, no logro ponerle titulo a las columnas de las tablas
Tengo un bucle que me genera un numero determinado de TabbedPane y dentro de cada uno de ellos un JTable, el cual se llena automáticamente en base a información dentro de archivos de texto.
El problema esta cuando quiero obtener la información de un row. Sucede que al hacer click en cualquier row de cualquier tabla, me devuelve información correspondiente a la ultima tabla añadida en el bucle que mencione anteriormente y no los datos que realmente quiero
Dejo un extracto del codigo en donde genero los TabbedPane y las Tablas y donde luego intento acceder a los datos.
Creacion de componentes:
1
2
3
4
5
6
7
8
9
10
11
12
13
for (int x = 0; x < ficheros.length; x++) {
panel = new JPanel();
tabla = new JTable();
modelo = new DefaultTableModel();
modelo.addColumn("NOMBRE");
modelo.addColumn("PRECIO");
modelo.setRowCount(0);
tabla.setAutoCreateRowSorter(true);
tabla.setSelectionMode(ListSelectionModel.SINGLE_SELECTION);
tabla.setModel(modelo);
panel.add(tabla);
tpanel.add(panel, ficheros[x]);
}
Obtener datos:
1
2
3
4
5
6
7
8
9
10
11
private void tablaMouseClicked(MouseEvent evt) {
String[] datosTabla = new String[4];
int cantidad, precio;
String strCantidad;
datosTabla[0] = "ID";
datosTabla[1] = (String) tabla.getValueAt(tabla.rowAtPoint(evt.getPoint()), 0);
datosTabla[2] = "1";
datosTabla[3] = (String) tabla.getValueAt(tabla.rowAtPoint(evt.getPoint()), 1);
System.out.println(datosTabla[1]);
}
PD: Ademas de este problema, no logro ponerle titulo a las columnas de las tablas
Valora esta pregunta


0