Ver Mensaje Individual
  #1 (permalink)  
Antiguo 25/11/2011, 05:13
dersir
 
Fecha de Ingreso: agosto-2010
Mensajes: 56
Antigüedad: 13 años, 8 meses
Puntos: 0
Pregunta Imágenes cacheadas en un JLabel

Hola, estoy teniendo un problema bastante raro, lo que pasa es lo siguiente:

Tengo un JLabel que se llama label, entonces hago:

label.setIcon("nombre_imagen");

Ahora descargo de Internet una imagen nueva y la llamo de la misma manera que la anterior, y cuando la descarga termina, aún dejando unos segundos más por si estuviera terminando de guardarla, vuelvo a hacer:

label.setIcon("nombre_imagen");

Pero la imagen que muestra es la anterior, a pesar de que ya no existe porque ha sido sobreescrita por la nueva. De hecho, mientras la aplicación está mostrando la anterior, voy a través del explorador de Windows y abro la nueva, y efectivamente es la que tiene que ser, porque la antigua se ha sobreescrito.

He probado haciendo después de la descarga doLayout(), repaint(), y otros métodos por el estilo, pero sigue igual.

Sólo puedo pensar que se está cacheando la imagen y recuperándose de la caché a la hora de solicitarse un archivo con el mismo nombre. ¿Hay alguna manera de evitar esto?

Como curiosidad, de cada 10 veces aproximadamente que ejecuto, 1 lo hace bien y 9 mal...Osea que no siempre se comporta de la misma manera :S