Ver Mensaje Individual
  #3  
Antiguo 21-05-2004
muli muli is offline
Miembro
 
Registrado: jun 2003
Ubicación: A Coruña
Posts: 197
Reputación: 21
muli Va por buen camino
ok, he puesto lo siguiente y parece que funciona es poco chapucero, pero!

procedure TForm1.MyIdleHandler(Sender: TObject; var Done: Boolean);
begin
Timer1.Enabled:=False;
Timer1.Enabled:=True;
end;


procedure TForm1.FormCreate(Sender: TObject);
begin
Application.OnIdle:= MyIdleHandler;
end;

En el timer tengo el tiempo que quiere el usuario mantener activa la aplicación y cuando llega a cumplirse ese tiempo


procedure TForm1.Timer1Timer(Sender: TObject);
begin
Timer1.Enabled:=False;
ShowMessage('han pasado x tiempo sin hacer nada');
utiles.CierraTablas(Datos) // Cierro todas las fuentes de datos
Halt; // cierro el programa
end;

Pero, yo quisiera complicarlo un poco más, desearía capturar también el tiempo de inactivad en el propio windows, tal y como hace el salvapantallas.
Alguna idea?

Gracias, y Saludos
__________________
SI UN PROBLEMA TIENE SOLUCION, YA NO ES UN PROBLEMA, Y SI NO LA TIENE PARA QUE PREOCUPARSE.
Responder Con Cita