Fórum Contagem de tempo #222038

24/03/2004

0

Olá, pessoal, eu gostaria de fazer um programa para contar o tempo de uso, para isso eu estou usando um timer para me informar o tempo de uso, só que ao invés disso, ele mostra a hora do sistema, a linha de código é essa:

label1.caption := timetostr(time);

Ao invés disto eu gostaria que fosse feita uma contagem que começasse do 0 (zero) e seguisse até o término do uso do programa.

Se alguém puder me ajudar eu fico muito grato.

Até mais pessoa!!!


Marcossma

Marcossma

Responder

Posts

24/03/2004

Geno

Olá, pessoal, eu gostaria de fazer um programa para contar o tempo de uso, para isso eu estou usando um timer para me informar o tempo de uso, só que ao invés disso, ele mostra a hora do sistema, a linha de código é essa: label1.caption := timetostr(time); Ao invés disto eu gostaria que fosse feita uma contagem que começasse do 0 (zero) e seguisse até o término do uso do programa. Se alguém puder me ajudar eu fico muito grato. Até mais pessoa!!!



Use o timer mesmo.
Quando o sistema iniciar vc guarda a hora inicial numa variavel.
Quando finalizar, vc pega a hora final diminue da inicial e vc tem o seu tempo de uso do sistema.


Responder

Gostei + 0

24/03/2004

Henry

Faça assim....

Primeiro crie uma variavel publica...
var
Tempo: integer;

Depois crie aonde lhe conver, a rotina que vai ativar o timer....
begin
Tempo:= 0;
Timer1.enabled:= true;
end

Dai no timer, com intervalo 1000( 1s) coloque...
Tempo:= tempo+1;
Label1.caption:= IntToStr(Tempo);

e assim ta ai...agora se vc quise faze assim, quando teu programa é iniciado inicia a contagem, quando fecha, salva a contagem pra continua a proxima vez que for aberto, é mais complicado, por que vc vai ter que salvar essa variavel em algum lugar, registro do windows, INI, onde c acha seguro, so como exemplo faça assim....

Crie outra variavel publica...
var
Regi: Tmemo;


No OnCreate...
begin
Regi:= Tmemo.create;
If fileExist(application.getnamePath+´Config.ini´) then
Regi.lines.loadfromfile(Config.ini);
end;

No onclose do programa...
Regi.lines.add(label1.caption);
Regi.lines.saveToFile(´Config.ini´);
Regi.free;

e é isso brother, desculpe se tiver algum erro pois fiz de cabeção mesmo....

Um abraço, Henry.


Responder

Gostei + 0

24/03/2004

Marcossma

Ok, eu já fiz deste modo, mas o que eu queria mesmo, era que o tempo de uso fosse mostrado segundo após segundo, tem como fazer isso ??

T+


Responder

Gostei + 0

24/03/2004

Marcossma

Puxa henry, foi mal, repondi antes de ver a tua resposta, mas valew, vo tenta essa dica, brigadão!!!!!


Responder

Gostei + 0

24/03/2004

Lucas Silva

Eu fiz umas tentativas aqui e cheguei neste código.
Deve ter um jeito mais simples de se fazer isto..
 // coloque um timer e um panel no seu form


procedure TForm1.Timer1Timer(Sender: TObject); // evento ontimer
begin
   Panel1.Caption := FormatDateTime(´hh:nn´,StrToTime(Panel1.Caption) +StrToTime(´00:01´));
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
   Panel1.Caption := ´00:00´;
end;



Responder

Gostei + 0

24/03/2004

Henry

Puxa henry, foi mal, repondi antes de ver a tua resposta, mas valew, vo tenta essa dica, brigadão!!!!!


Sem problemas brother, de uma olhada ai qualquer coisa a poste ai....


Responder

Gostei + 0

24/03/2004

Marcossma

Lucas essa tua dica foi paulada, funciono direitinho, mas será que tem como fazer pra aparecer a hora com os três termos, hh:mm:ss ??

T+ velho!!!


Responder

Gostei + 0

24/03/2004

Paulo_amorim

Lucas essa tua dica foi paulada, funciono direitinho, mas será que tem como fazer pra aparecer a hora com os três termos, hh:mm:ss ?? T+ velho!!!


Olá
Ao invés do hh:nn use hh:nn:ss

FormatDateTime(´hh:nn:ss´, etc.)



Responder

Gostei + 0

24/03/2004

Lucas Silva

Tranquilo.


Responder

Gostei + 0

24/03/2004

Marcossma

Valew galera!!1

Brigadão aee!!!!1


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar