etspaz 0 Denunciar post Postado Dezembro 19, 2007 olá, eu achei uma dica pra fazer um contador de tempo regressivo, coloquei no onclick de um botão pra testar, mas quando clico o programa fica travado. o codigo é este: var Tempo : TTIME; begin Tempo := StrToTime('00:05:00'); while tempo <> STrToTime('00:00:00') do begin Label1.caption := Timetostr(StrToTime('00:05:00') - Tempo); Sleep(1000); Application.processmessage; Tempo := Tempo - StrToTime('00:00:01'); end; end; o que eu devo alterar? Compartilhar este post Link para o post Compartilhar em outros sites
Rodrigo Miss 1 Denunciar post Postado Dezembro 19, 2007 Faça isso dentro de um Timer: if (Tempo > STrToTime('00:00:00')) then begin Label1.caption := TimeToStr(Tempo - StrToTime('00:00:01')); Tempo:= Tempo - StrToTime('00:00:01'); end;Lembrando q Tempo deve ser variavel global, pode - se atribuir um valor ao mesmo no onCreate to form ... Compartilhar este post Link para o post Compartilhar em outros sites
etspaz 0 Denunciar post Postado Dezembro 19, 2007 ae Rodrigo, agora funcionou, vlw Compartilhar este post Link para o post Compartilhar em outros sites
bdexterholland 0 Denunciar post Postado Dezembro 19, 2007 Ele trava porque o comando sleep(1000) faz o programa ficar congelado por 1000 milesegundos (1 segundo) Compartilhar este post Link para o post Compartilhar em outros sites