JEditorPanel

Monica
31 de Enero del 2006
Hola a todos.!!!

En mi aplicación tengo un bucle y quiero que en un JEditorPanel se actualice el contenido mientras se ejecuta el bucle. El problema que tengo es que sólo veo la actualización de la ultima iteración del bucle. ¿Por qué no pueden verse las otras actualizaciones?

Alguna idea? Lo que intento cambiar es texto.

Saludos a todos, y muchas gracias si pueden ayudarme.

NoDo
31 de Enero del 2006
Hola!
Bueno, como no sé muy bien que es lo que quieres hacer, entonces: Un bucle va muy rápido, es por eso que quizá no veas como lo hace. Lo que sí puedes hacer es que a cada iteración del bucle, pare unos segundos para "ver" lo que se está haciendo.
Infórmate si acaso de System.sleep(), que creo que hay algún método que le pasas como parámetro el número de milisegundos que quieres que se "duerma".

Venga, un saludo.

malexicarum
31 de Enero del 2006
Para crear un pequeño temporizador puedes usar la siguiente linea para esperar entre instruccion y instruccion.

Aqui una pequeña funcion:

public void esperar(long time){
try{
Thread.sleep(time);
}catch(Exception e){}

}

Rupper
31 de Enero del 2006
Quizá el problema no va conque el panel se actualice demasiado rápido, sino que no se actualiza por mala sincronización con swing. Prueba a crear un thread separado, y pasarselo a swing para que lo ejecute el mismo.

Es el mejor metodo para ejecutar threads o tareas muy esfrozosas para la cpu que acceden a componentes graficos, sino corres el riesgo de que se colapse el ordenador calculando y no se preocupe de lo que muestra la pantalla.

Salu2. Rupper.