Pregunta

Al iniciar mi aplicación, al principio tengo que leer algunos datos, iniciar algunos formularios, etc.En ese momento, el usuario ve solo gris preparándose para mostrar algo.

Esto dura unos segundos...

Pensé en una pantalla de presentación que carga los datos en un hilo separado y también muestra cuánto tiempo llevará.¿O simplemente una barra de estado?

¿Cómo harías algo como esto?

Estoy usando C# .NET 3.5 + Winforms

¿Fue útil?

Solución

Con WindowsForm, más fácil es utilizar BackgroundWorker.

Puede desactiva los controles durante la carga y mostrará una barra de progreso en la barra de startus con etiqueta como "cargan los datos ...".

Enlace de MSDN: http://msdn.microsoft. com / es-es / library / system.componentmodel.backgroundworker.aspx

Otros consejos

Vea este artículo de CodeProject: Una pantalla de presentación bastante buena en C#

Implementa una pantalla de presentación que:

  • Se ejecuta en un hilo separado
  • Se desvanece cuando aparece y se desvanece cuando desaparece.
  • Muestra un mensaje de estado de ejecución que se actualiza mediante un método estático.
  • Muestra y actualiza una barra de progreso de gradiente suave dibujada por el propietario y autocalibrante y predictiva.
  • Muestra el número de segundos que quedan antes de que se complete la carga.

Aquí tienes un ejemplo de cómo se ve; tal vez el tuyo sea más bonito.8-)

alt text

Si sólo dura unos segundos y luego mostrando la espera cursor debe estar bien. Tal vez se puede disponer que la ventana principal se muestra lo más rápidamente posible y el resto es inició después de la primera actualización de pantalla (por ejemplo, usando un temporizador). Esto reducirá el percibida el tiempo de arranque.

Con el fin de reducir el tiempo de inicio también puede considerar el aplazamiento de algunas de las acciones de puesta en marcha si no son estrictamente necesario. Se puede hacer más adelante en el fondo utilizando una temporizador o bajo demanda.

Hace poco escribí una pantalla de bienvenida similar utilizando Tom Clements como base. Echar un vistazo a Mi pantalla de bienvenida para ver si se ajusta a sus necesidades.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top