Repaint

Hola.
Hemos desarrollado una aplicación en Java que es sólo un proceso programable que no necesita la intervanción del usuario. Esta aplicación a modo de demo queremos monitorizarla de forma que se puede ver de una forma intuitiva como va funcionando, como van cambiando las estructuras de datos y los pasos que va dando.
El interfaz que se nos ha ocurrido es un JList en la parte derecha que muestra los pasos que se van dando. Un TabbedPane en la izquierde con 3 pestañas; una que representa un JTree (con la estructura de datos) y 2 JTables.
Además hay 2 botones de navegación 1 que lanzan la ejecución del programa y el otro que lanza la ejecución paso a paso (deteniendos en algunos safepoints que hay definidos). El proceso es un thread que cuando llega a un safepoint se para.
Los problemas:
1º->Al recargar los paneles de las distintas pestañas se solapan (i.e estoy viendo medio JTree y 1 JTable al mismo tiempo).
2º->El JList que muestra los pasos que vamos dando a veces desaparece y se queda en blanco. Posteriormente vuelve a su estado normal.
3º->A veces los JTable y el JTree lanzan una excepción que no se muy bien de donde sale, lanzando el programa bajo las mismas condiciones a veces salta la excepción y a veces no. Yo supongo que será al repintar los componentes.
¿Sabes por qué puede suceder algo de todo esto?
Gracias, un saludo.

1 Respuesta

Respuesta
Así es difícil de saber donde esta el error, pero tal vez tenga que ver algo con la concurrencia del hilo, que bloquee el redibujado de la aplicación. Otro detalle que debes de tener en cuenta es que si paras la aplicación (supongo que lo estaréis haciendo con un depurador normal) se bloquean todos los mensajes que llegan a la ventana, y por tanto el redibujado.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas