Cita:
Empezado por David
Tengo que ejecutar un evento cada hora exacta, ya tengo hecho el código, cada hora 10:00 las 11:00, las 12:00, la aplicación minimizada al lado del reloj se activa.
La manera que se me ocurre hacer esto es tener un timer, y que cada segundo compruebe si es o no la hora, si es la hora, salte el evento, pero no sé si hay otra manera mejor de hacerlo.
|
Básicamente esa es la forma de hacerlo.
Yo en algun caso que he tenido que hacer algo similar, he utilizado 2 Timers, simplemente para no tener un Timer tan continuo.
Uso uno cada 500 ms y otro cada 45 sg.
El que tengo activo es el que salta cada 45 sg y cuando este llega al minuto 59, activo el tmer 2 (cada 500 ms), cuando he hecho lo que toca a la hora exacta, vuelvo a desactivar el segundo (cada 500 ms) y dejoa activo el primero (cada 45 sg); Y así a eserar ala siguiente hora...
Cita:
Empezado por David
Por otro lado y relacionado con lo mismo, hay alguna función para que te diga si son los minutos 00, independientemente de al hora, me explico, las 10:00, las 11:00, es las 10 horas 0 minutos, pues quiero que me diga si es la X hora 0 minutos, también valdría si le pasas los parametros necesarios, si es la X hora 05 minutos, en el caso que el usuario desee adelantar o cambiar la hora.
|
Revisa todas las funciones de la unit
DateUtils. Para lo que comentas tienes la función
MinuteOf.
Deberías poder usarla así:
Código Delphi
[-]
if (MinuteOf(Now()) = 5) then begin
... minuto 5
end;