Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Contador de tiempo (https://www.clubdelphi.com/foros/showthread.php?t=20885)

marceloalegre 28-04-2005 17:24:31

Contador de tiempo
 
Que tal les molesto para que me iluminen con este tema:
necesito hacer para una aplicacion, un contador en hh.mm.ss
que cuente el tiempo de 0 desde que lo ejecuto...
Estuve investigando, y encontre la funcion gettickcount ... pero me retorna nro y si le pongo un timer va ascendiendo... no me sirve.. ademas tengo el problema del formato... hh.mm.ss

alguien me puede asistir en este tema con algun codigo como para que pueda ponerme en accion con esto?

Muchas gracias.-

Investment 28-04-2005 18:11:07

Cita:

Empezado por kanvictor
si le pongo un timer va ascendiendo... no me sirve.. ademas tengo el problema del formato... hh.mm.ss

¿Entiendo que quieres un Timer que vaya bajando el tiempo desde que se ejecuta la aplicacion no?

En ese caso y suponiendio que quieres que baje desde una hora hasta cero:

.- Pon una label en tu formulario con el caption: '01:00:00'
.- Pon un timer en tu formulario
.- En el evento OnTimer del Timer escribe lo siguiente:

Código:

procedure TForm1.Timer2Timer(Sender: TObject);
begin
  LabelTimer.Caption:= FormatdateTime('hh:mm:ss',StrToDateTime(LabelTimer.Caption) -0.00001);
 
  if labelTimer.caption:='00:00:00' then Close; //Se cierra la aplicacion
 
  end;

La etiqueta cambia cada segundo poniendo en el label un segundo menos y haciendo una cuenta atras hasta 00:00:00

unreal4u 28-04-2005 19:53:01

entendi justamente lo contrario
 
haber ... yo entendi justamente todo lo contrario ... que parta desde 0 hasta el infinito ... en ese caso, la solución sería la siguiente:

1.- cuando se te inicia el programa (evento OnCreate del Form principal), verificas qué hora es y la guardas en una variable global.

2.- Pones un timer, y cada 1 seg (o 1000 mseg), verificas qué hora es.

3.- Sacas la diferencia y...

4.- Ya tienes el tiempo que se ha estado ejecutando tu programa.

GetTickCount sirve para ver cuánto rato ha estado prendido el PC, (Hasta donde sé, nunca lo he confirmado), pero no para ver cuánto rato ha estado tu aplicación en uso.

Para lo otro, o sea, el formato, creo que cuando lo conviertes a string, le pones el formato, por ejemplo
Código Delphi [-]
 datetostr('hh:mm:ss:zzz',now);

No estoy seguro, pero creo que así era.


La franja horaria es GMT +2. Ahora son las 18:18:03.

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