FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
|||
|
|||
Capturar ninguna acción
Necesito capturar mientras se esté ejecutando mi programa si existe actividad en el ordenador, es decir, como si yo fuera a lanzar el salvapantallas, que no es el caso, es para que pasado un tiempo sin trabajar en el ordenador se salga fuera del programa automáticamente.
Gracias. Saludos
__________________
SI UN PROBLEMA TIENE SOLUCION, YA NO ES UN PROBLEMA, Y SI NO LA TIENE PARA QUE PREOCUPARSE. |
#2
|
||||
|
||||
Busca acerca del evento OnIdle del objeto TApplication.
// Saludos |
#3
|
|||
|
|||
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. |
#4
|
||||
|
||||
muli, intenta encerrar tu código en las etiquetas [ Delphi ] y [ / Delphi ] (pero sin espacios), y tampoco estaría de mal que identases tu código.
Para que veas que tal queda:
__________________
:) |
#5
|
||||
|
||||
Lo he identado a mano, a si que se van a ver errores de espacio seguro.
__________________
:) |
#6
|
|||
|
|||
Me parece muy bonito, pero yo espero algo funcional no bonito, seguro que a la gente que le interesa el post le da igual si está en azul o en negrita lo que quiere es que funcione y aprender de la respuesta.
No me interpretes mal, pero me parece que existen cosas mas importantes que la belleza a la hora de contestar.
__________________
SI UN PROBLEMA TIENE SOLUCION, YA NO ES UN PROBLEMA, Y SI NO LA TIENE PARA QUE PREOCUPARSE. |
#7
|
||||
|
||||
Muli, podrías tambien poner otra aplicación como salvapantallas, y que cuando se ejecutase, enviase un mensaje a tu aplicación con la cual esta se cierra. Después, la aplicación "salvapantallas" ejecutaría el verdadero salvapantallas y se cerraría...
No se, es una posiblilidad, no?
__________________
:) |
#8
|
|||
|
|||
ok, es una buena idea, puedo tener un proceso corriendo siempre en la aplicación que detecte si está el salvapantallas activado y si éste está activado cerrar la aplicación, lo que pasa es que obligo al usuario a tener un salvapantallas, y no se si estando la aplicación por ejemplo minimizada sigue corriendo el proceso.
Saludos. Gracias.
__________________
SI UN PROBLEMA TIENE SOLUCION, YA NO ES UN PROBLEMA, Y SI NO LA TIENE PARA QUE PREOCUPARSE. |
#9
|
||||
|
||||
O puedes poner dicho proceso como salvapantalla, y que al activarse, cierre la aplicación y después, si el usuario quiere, ejecutar un salvapantallas.
|
|
|
|