데이터가로드되는 동안 시간을 죽이는 스플래시 화면을 표시하는 방법은 무엇입니까?
-
19-09-2019 - |
문제
앱을 시작할 때 처음에는 일부 데이터를 읽어야합니다. 일부 양식 등을 시작해야합니다. 그 당시 사용자는 회색이 형태를 보여줄 준비가 된 것을 본다.
이것은 몇 초 동안 지속됩니다 ...
나는 별도의 스레드에 데이터를로드하는 스플래시 화면을 생각하고 그것이 얼마나 걸릴지 보여줍니다. 아니면 상태 표시 줄?
이런 식으로 어떻게 하시겠습니까?
C# .net 3.5 + winforms를 사용하고 있습니다
해결책
WindowsForm을 사용하면 더 쉬운 것은 BackgroundWorker를 사용하는 것입니다.
로드하는 동안 컨트롤을 비활성화하고 "데이터로드 데이터 ..."라는 라벨이있는 startus bar의 진행률 표시 줄을 표시 할 수 있습니다.
MSDN 링크 : http://msdn.microsoft.com/en-us/library/system.componentmodel.backgroundworker.aspx
다른 팁
이 CodeProject 기사를 참조하십시오. C#의 꽤 좋은 스플릿 화면
스플래시 화면을 구현합니다.
- 별도의 스레드에서 실행됩니다
- 나타나는대로 사라지고 사라질 때 사라집니다.
- 정적 메소드를 사용하여 업데이트되는 실행중인 상태 메시지를 표시합니다.
- 예측 자체 보석 소유자가 잡는 부드러운 그레이드 gradient Progress Bar를 표시하고 업데이트합니다.
- 부하가 완료되기 전에 남아있는 몇 초를 표시합니다.
다음은 그것이 어떻게 생겼는지에 대한 예입니다. 아마도 당신의 것이 더 예쁘을 것입니다. 8-)
몇 초만 지속되면 대기 커서를 표시하는 것은 괜찮을 것입니다. 아마도 메인 창이 가능한 한 빨리 표시되고 나머지는 첫 번째 화면 업데이트 (예 : 타이머 사용) 후에 시작될 수 있습니다. 이것은 감소합니다 인식 시작 시간.
시작 시간을 줄이려면 시작 시간이 크게 필요하지 않은 경우 일부 시작 작업을 연기하는 것을 고려할 수도 있습니다. 타이머 또는 주문형을 사용하여 백그라운드에서 나중에 수행 할 수 있습니다.
나는 최근 Tom Clements를 기본으로 사용하여 비슷한 스플래시 화면을 썼습니다. 보세요 내 스플래시 화면 그것이 당신의 요구에 맞는지 확인합니다.