NO actualiza jtable dentro de un ciclo for
Publicado por Sebastián Rubiolo (2 intervenciones) el 16/05/2014 01:00:11
Hola. Tengo dentro de un ciclo for una sentencia que agregar filas a un jtable. Lo hace bien, el tema es que la tabla se actualiza muestra todas las filas agregadas luego de finalizar todas las operaciones restantes. Y yo necesito que se actualice inmediatamente.
Muestro el código:
Saludos.
Muestro el código:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
public void envia_USB(byte comando){
byte[] out = new byte[2];
out[0] = 0x00;
out[1] = comando;
int hora, minutos, segundos;
DefaultTableModel tablaModelo = (DefaultTableModel) jTable1.getModel();
try {
for (int x=0; x<5;x++) {
//obtengo la cptura desde el usb
byte[] Respuesta = iface.QWriteRead(out, 2, 5, 1000);
System.out.println(Respuesta);
// convierte en short los valores del converso ad y los lleva a una variable int
short valorAlto = Respuesta[1];
short valorBajo = Respuesta[2];
int valorArmado = ((valorAlto & 0xFF) << 8) | (valorBajo & 0xFF);
//capturo la hora del momento
DecimalFormat formateador = new DecimalFormat("####.###");
String valorVoltaje = formateador.format((float)valorArmado*5/1024);
System.out.print(valorArmado);
Calendar calendario = Calendar.getInstance();
hora =calendario.get(Calendar.HOUR_OF_DAY);
minutos = calendario.get(Calendar.MINUTE);
segundos = calendario.get(Calendar.SECOND);
//incorporo en la tabla una fila nueva con los campos completados
tablaModelo.addRow (new Object[]{ hora + ":" + minutos + ":" + segundos ,Respuesta[0], valorVoltaje, "0"});
//supongo que acá debería actualizar la tabla
tablaModelo.fireTableDataChanged();
// doy un 1 segundo para la siguiente captura
Thread.sleep(1000);
}
} catch (Exception ex) {
System.out.println("ERROR 1:" + ex.getMessage() + ex.getCause());
}
}
Saludos.
Valora esta pregunta
0