"sincronizar" mostrar Form en Pantalla
Buenas:
Tengo un programa que al iniciarse muestra en pantalla un menu (Form Principal),El caso es que en el evento Form Activate el programa lee una gran cantidad de datos de un archivo, lo que le lleva un monton de tiempo.....Esto produce que del formulario menu se muestre en principio una parte (los bordes) y al rato (una vez leidos los datos del archivo) el resto del form (las opciones menu). Es posible hacer que lea primero todos los datos y despues muestro el form completo . Espero que me haya explicado Bien. Gracias. |
Supongo que podrás solucionarlo utilizando Application.ProcessMesages.
|
Creo el proceso correcto sería al contrario, es decir:
- Primero muestras el form y que se pinte en pantalla - después empieza el proceso gordo. Quizás una barra de progreso, un gif animado, etc ayuden un poco. Si te interesa este método, busca en el foro por "aftershow". El FormActivate ¿seguro que es el más adecuado?, ese evento se procesa siempre que pierda el foco una ventana y después lo vuelva a adquirir. Creo que te deberías referir al OnShow, ya que se procesa una sola vez. Pero no sé si es lo que quieres. Saludos |
Otra posibilidad sería dejar la lectura de datos en un splash screen que se muestre antes del formulario principal, y mostrar éste sólo hasta que se haya concluido la lectura.
// Saludos |
La franja horaria es GMT +2. Ahora son las 03:02:59. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi