PDA

Ver la Versión Completa : cronometro hacia atras


kurono
19-12-2008, 23:55:11
hola amigos como estan les cuento que e hecho un cronometro en delphi 7 y funciona perfectamente pero ahora me gustaria hacer que ese cronometro me corra hacia atras osea que comiense en un tiempo determinado y concluya en cero por ejemplo que comiense en un 1minuto y termine en 0 aqui le muestro el codigo q he hecho


var
Form1: TForm1;
HoraInicial: TDateTime;

procedure TForm1.Button1Click(Sender: TObject);
begin
HoraInicial := Now;
Timer1.Enabled := true;
end;

procedure TForm1.Timer1Timer(Sender: TObject);
begin
label1.Caption :=TimeToStr(Now - HoraInicial);
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
Timer1.Enabled := False;
end;

end.

cascarrabias
22-12-2008, 10:14:09
Hola pues una manera rapida en que se me ocurre para hacer esto es colocar el timer a 100 milisegundos y un edit para preguntar el numero de minutos a decrementar y utilizar el siguiente codigo:


Private
Inicio : tDateTime ;
mm,dm,ss,z: integer;
intervalo : String ;

procedure TForm1.Button1Click(Sender: TObject);
begin
Inicio := Now ;
timer1.enabled:=true;
mm:=strtoint(Edminutos.text);
end;


procedure TForm1.Timer1Timer(Sender: TObject);
begin
intervalo:= FormatDateTime('nn:ss:z',Now - Inicio);
dm:=mm-strtoint(intervalo[1]+intervalo[2]);
if strtoint(intervalo[1]+intervalo[2])=mm then timer1.enabled:=false;
ss:= 60 - strtoint(intervalo[4] + intervalo[5]);
z:= 10 - strtoint(intervalo[7]);
label1.caption:= inttostr(dm-1) + ':' + inttostr(ss) + ':' + inttostr(z);
end;



Tal vez haya que revisar bien o idear una manera diferente para el decremento tanto de los minutos como los segundos pero seguro con esto te das una idea por donde empezar! ;)

kurono
22-12-2008, 17:56:01
ok lo probare

kurono
22-12-2008, 18:05:47
gracias amigos cascarabia era lo que necesitaba