Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   SQL (https://www.clubdelphi.com/foros/forumdisplay.php?f=6)
-   -   'splash screen' consulta sql (https://www.clubdelphi.com/foros/showthread.php?t=60861)

Galahad 16-10-2008 10:45:00

'splash screen' consulta sql
 
hola, buenos días...

utilizo algunas consultas sql sobre tablas paradox de un tamaño considerable.
El tema es que alguna de estas querys tardan hasta 10-15 segundos. Necesitaria mostrar al usuario una pantalla o mensaje que le muestre 'calculando o espere por favor....'
alguien conoce alguna función del api de windows o bien un metodo para poder implementar este tipo de presentación visual a todas las consultas sql que impliquen un tiempo de proceso importante.. ?

duilioisola 16-10-2008 13:29:58

Supongo que la forma mas sencilla de todas es crear un form que de el mensaje. Antes de lanzar la consulta lo muestras y una vez que tengas el resultado lo quitas.

Pon todo en un bloque try...finally, para que a pesar de que falle, esconda el Form del mensaje.

- Este Form, puede tener un Label en medio y centrado, que puedas cambiar para cada consulta "lenta".
- Tambien puede tener un timer, que muestre algún movimiento (un punto, dos puntos, tres puntos, un punto ...)
- O puede tener una barra que se vaya llenando con ese timer.

Código Delphi [-]
begin
   {...}
   try
      FCalculando.Show;
      FCalculando.LabelMensaje.Caption := 'Calculando Totales de ????. Espere por favor...';
      {Ejecutar calculo largo};
      {...}
   finally
      FCalculando.Hide;
   end;
   {...}
end;

coso 16-10-2008 15:03:32

Hola, podrias hacer aparecer una form y eliminarla al acabar el proceso. En la seccion trucos existe uno TTimer que te muestra el tiempo que ha pasado y el que resta para finalizar un proceso. Lo puse tal cual, y es bastante mejorable, pero de funcionar funciona. saludos.


La franja horaria es GMT +2. Ahora son las 15:53:52.

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