Question

Lors du démarrage de mon application, je dois d'abord lire certaines données, ont init certaines formes et ainsi de suite. Pour cette fois que l'utilisateur voit gris juste de prêt à montrer les formes de quelque chose.

Cela dure quelques secondes ...

Je pensais que d'un écran de démarrage qui charge les données dans une discussion séparée et montre aussi combien de temps il faudra. Ou tout simplement une barre d'état?

Comment voulez-vous faire quelque chose comme ça?

J'utilise C # .NET 3.5 + Winforms

Était-ce utile?

La solution

Avec WindowsForm, plus facile est d'utiliser BackgroundWorker.

Vous pouvez désactiver les contrôles pendant le chargement et afficher une barre de progression sur la barre de startus avec étiquette « chargement des données ... ».

lien MSDN: http://msdn.microsoft. com / fr-fr / bibliothèque / system.componentmodel.backgroundworker.aspx

Autres conseils

Voir cet article CodeProject: A Pretty Good écran Splash en C #

Il met en œuvre un écran d'accueil que:

  • Fonctionne sur un thread séparé
  • Fades dans tel qu'il apparaît et se fanent comme il disparaît
  • Affiche un message d'état en cours d'exécution qui est mis à jour en utilisant une méthode statique
  • Affiche et mettre à jour un auto-étalonnage barre de progression lisse gradient owner-drawn prédictive
  • Affiche le nombre de secondes restantes avant la charge est terminée

Voici un exemple de ce qu'il ressemble - peut-être le vôtre sera plus jolie. 8 -)

text alt

Si elle ne dure que quelques secondes l'affichage puis l'attente le curseur doit être bien. Peut-être il peut être prévu que la fenêtre principale apparaît le plus rapidement possible et le reste est commencé après la première mise à jour de l'écran (par exemple en utilisant une minuterie). Cela permettra de réduire le perçu temps de démarrage.

Afin de réduire le temps de démarrage, vous pouvez également envisager remettre à plus tard certaines des actions de démarrage si elles ne sont pas strictement nécessaire. Il peut être fait plus tard dans l'arrière-plan en utilisant un minuterie ou sur demande.

J'ai écrit récemment un écran d'accueil similaire en utilisant Tom Clements comme base. Jetez un oeil à Mon Splash Screen pour voir si elle répond à vos besoins.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top