La imagen se detiene la animación en minimizar y restaurar
-
09-09-2019 - |
Pregunta
Tengo una aplicación .NET Windows Forms con un GIF animado en una PictureBox
. Es una animación de carga, se muestra mientras que un BackgroundWorker
hace algún procesamiento en otro hilo. Me carga la imagen estableciendo la propiedad Image
y el anime por su cuenta.
Todo está bien hasta que minimizar y restaurar la aplicación. En ese momento, la imagen se detiene la animación y sólo muestra lo que era la última trama sucesivamente.
Tenga en cuenta que:
- El subproceso de fondo todavía funciona muy bien y ninguno de los "negocios" de la aplicación se ve afectada.
- GIF animados que aparecen Posteriormente-¿Funcionan bien (a menos que la aplicación se minimiza de nuevo).
¿Alguien sabe cuál es la causa de este problema? Soluciones provisionales?
Solución
Al parecer, el cuadro de imagen se detiene de forma explícita la animación cada vez que se oscureció la ventana. El cuadro de imagen debe ser invalidado y se pintó cuando la ventana ya no está oscurecido, pero el evento de invalidación no se produce automáticamente en Vista.
Una solución consiste en añadir un temporizador al formulario que invoca PictureBox.Invalidate () cada 500 ms. Esto asegurará que la animación nunca se detiene.
este MSDN enhebrar para más información.
Otros consejos
No sé cuál es su causa, pero lo que si se detecta cuando se reduce al mínimo y cada vez que se restaura remostrado él?