Java - CONFIRMARActionPerformed actualizar contenido jLabel en caliente

   
Vista:

CONFIRMARActionPerformed actualizar contenido jLabel en caliente

Publicado por juanjoml (2 intervenciones) el 10/08/2018 13:33:02
Hola.

Tengo un código en java que abre un JFrame que captura información para una tabla de bbdd.

El botón CONFIRMAR realiza una serie de 'operaciones' con distinta información introducida en un JFrame:
- conectarse a una bbdd
- montar un scrip sql
- actualizar base d datos

lo que quiero es que dentro del ActionPerformed del botón CONFIRMAR vaya actualizando 'en caliente' el texto que se muestra en un JLabel denominado mensajes_salida. Es decir que después de la instrucción

Mi código es:


this.mensaje_salida.setText("espera operacion ejecutandose ")
...... código que prepara la apertura de la base de datos
this.mensaje_salida.setText("espera abriendo bbdd ")
...... código que abre la bbdd
this.mensaje_salida.setText("espera preparando instruccion insert ")
.... código que prepara la sentencia sql
this.mensaje_salida.setText("espera insertando datos ")
..... código que ejecuta la sentancia


Actualmente solo se refresca la información en el JFrame una vez se sale del ActionPerformed del botón CONFIRMAR .

Saludos y 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

CONFIRMARActionPerformed actualizar contenido jLabel en caliente

Publicado por Tom (1270 intervenciones) el 10/08/2018 15:08:40
Pues, en principio, no puedes.
Tu ActionPerformed se ejecuta en el hilo de eventos de swing así que éste no hará nada más hasta que no acabe tu método (por eso no se actualizan tus labels).
No debes hacer operaciones largas (en tiempo) desde el hilo de eventos de swing.

Empieza por aquí:
https://docs.oracle.com/javase/tutorial/uiswing/concurrency/dispatch.html
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

CONFIRMARActionPerformed actualizar contenido jLabel en caliente

Publicado por juanjo (2 intervenciones) el 13/08/2018 10:40:38
Gracias por la respuesta.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Revisar política de publicidad