이미지 애니메이션은 최소화 및 복원시 중지됩니다
-
09-09-2019 - |
문제
애니메이션 GIF가있는 .NET WinForms 응용 프로그램이 있습니다. PictureBox
. a BackgroundWorker
다른 스레드에서 일부 처리를 수행합니다. 설정하여 이미지를로드합니다 Image
재산과 자체적으로 애니메이션.
응용 프로그램을 최소화하고 복원 할 때까지 모두 괜찮습니다. 이 시점에서 이미지는 애니메이션을 중지하고 마지막으로 켜진 프레임 만 표시합니다.
주목하십시오 :
- 백그라운드 스레드는 여전히 잘 작동하며 응용 프로그램의 "비즈니스"중 어느 것도 영향을받지 않습니다.
- 이후에 분열 된 애니메이션 GIF는 제대로 작동합니다 (응용 프로그램이 다시 최소화되지 않는 한).
이 문제의 원인이 무엇인지 아는 사람이 있습니까? 해결 방법이 있습니까?
해결책
분명히 Window가 가려 질 때마다 PictureBox는 분명히 애니메이션을 중지합니다. 창이 더 이상 가려지지 않으면 그림 박스를 무효화하고 다시 칠해야하지만 Vista에서는 무효화 이벤트가 자동으로 발생하지 않습니다.
하나의 해결 방법은 500ms마다 picturebox.invalidate ()를 호출하는 형태에 타이머를 추가하는 것입니다. 이것은 애니메이션이 멈추지 않도록합니다.
보다 이 MSDN 스레드 자세한 내용은.
다른 팁
원인이 무엇인지 모르겠지만 최소화 된시기와 복원 할 때마다 REDISPLAING을 감지하면 어떻게해야합니까?
제휴하지 않습니다 StackOverflow