Fórum Controle de Inatividade #388568
15/10/2010
0
Marcelo
Curtir tópico
+ 0Posts
15/10/2010
Wilson Junior
Gostei + 0
15/10/2010
Marcelo
Gostei + 0
15/10/2010
Emerson Nascimento
tente colocando estes procedimentos no seu form principal:
procedure TForm14.FormCreate(Sender: TObject);
begin
Application.OnIdle := LigaTimer;
Application.OnMessage := DesligaTimer;
end;
procedure TForm14.LigaTimer(Sender: TObject; var Done: Boolean); // liga o timer ao ficar ocioso
begin
Timer1.Enabled := True;
end;
procedure TForm14.DesligaTimer(var MSG: tagMSG; var Handled: Boolean); // desliga o timer ao entrar em atividade
begin
Timer1.Enabled := False;
end;
procedure TForm14.Timer1Timer(Sender: TObject); // ao executar o timer, depois do tempo informado
begin
// Aqui você executa a ação cabível. no meu caso apenas alterei um label.
Label1.Caption := SysUtils.TimeToStr(SysUtils.Now());
end;
no meu exemplo coloquei 10 segundos no timer (timer.interval = 10000).
veja se isso funciona.
Gostei + 0
15/10/2010
Wilson Junior
Bom, o Emerson já postou uma boa solução.
Qyualquer coisa é só perguntar.
Gostei + 0
17/10/2010
Marcelo
Gostei + 0
18/10/2010
Leonardo Xavier
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)