Ver Mensaje Individual
  #11  
Antiguo 14-11-2007
Avatar de duilioisola
[duilioisola] duilioisola is offline
Miembro Premium
 
Registrado: ago 2007
Ubicación: Barcelona, España
Posts: 1.738
Reputación: 20
duilioisola Es un diamante en brutoduilioisola Es un diamante en brutoduilioisola Es un diamante en bruto
En el procedimiento veo un error al darle formato a lblTiempo.Caption.
Los minutos están puesto con dos "N" y deben ser dos "M".

De todos modos, yo haría lo siguiente:

La variable Tiempo debe ser global. O sea, definida en la parte Private o Public del Form.

Código Delphi [-]
   public
      Tiempo : TDateTime;
Justo antes de ejecutar la consulta pones la variable Tiempo a la hora actual y activas el timer.
Código Delphi [-]
   [...]
   Tiempo := Now;
   Timer1.Enabled := True;
   Table.Open;   
   Timer1.Enabled := False;
   [...]
En el procedimiento OnTimer, cada vez que se ejecuta, debes deshabilitarlo, por las dudas tarde demasiado en ejecutarse y se ejecute otra vez antes de terminar la primera ejecución. Al finalizar lo que deba hacer lo habilitas nuevamente.

Lo que debes mostrar luego es la diferencia entre la hora actual y la hora a la que lo lanzaste (Now-Tiempo)

Recuerda lo que dije antes del formato "hh:mm:ss"
Código Delphi [-]
procedure TfrmMontosFacturadosPorFamilia.Timer1Timer(Sender: TObject);
begin
     Timer1.Enabled := False;
     lblTiempo.Caption:=FormatDateTime('hh:mm:ss',Now-Tiempo);
     lblTiempo.Refresh;
     Application.ProcessMessages;
     Timer1.Enabled := True;
end;

Dime si ahora, con este cambio te sale bien...
Responder Con Cita