Foros del Web » Programación para mayores de 30 ;) » Programación General » Visual Basic clásico »

¿como controlar eventos con el timer?

Estas en el tema de ¿como controlar eventos con el timer? en el foro de Visual Basic clásico en Foros del Web. hola a todos nuevamente..., necesito orientacion con respecto a lo siguiente: necesito controlar un evento con el timer, la idea es que a cierta hora ...
  #1 (permalink)  
Antiguo 30/06/2005, 23:00
Avatar de ccca001  
Fecha de Ingreso: agosto-2004
Mensajes: 388
Antigüedad: 19 años, 7 meses
Puntos: 0
¿como controlar eventos con el timer?

hola a todos nuevamente..., necesito orientacion con respecto a lo siguiente:

necesito controlar un evento con el timer, la idea es que a cierta hora que yo programo suceda un evento (un msgbox) indicando algo... logro hacerlo pero el problema es que me repite el mensaje a cada segundo a pesar de que tengo una variable (horabol) con este formato (hh:mm)...el mensaje lo tengo en el timer de tal modo que la variable que toma la hora (un label) al momento de activarse el form es igual a la variable que programo (horabol) para que suceda el evento...pero no logro que se detenga el evento una vez que lo acepto...???

que estoy haciendo mal??

__________________
"How do you define Real?"
  #2 (permalink)  
Antiguo 01/07/2005, 02:38
 
Fecha de Ingreso: mayo-2005
Mensajes: 93
Antigüedad: 18 años, 11 meses
Puntos: 1
PROBLEMA: El timer se lanza cada segundo y solo quiero que me lance el evento a ciertas horas que sé.

SOLUCIÓN:
Porque cuando te salta el evento timer no pones una condicion por la cual haga o no haga lo quieres???
es decir, si quieres que se lance a las 9 de la mañana...

if hour(now) = 9 then
'Llamada a la función que quieres lanzar
endif

__________________
No te hubieran dado la capacidad de soñar sin darte también la posibilidad de convertir tus sueños en realidad
  #3 (permalink)  
Antiguo 01/07/2005, 11:07
Avatar de lic_dahool  
Fecha de Ingreso: noviembre-2003
Mensajes: 418
Antigüedad: 20 años, 5 meses
Puntos: 0
El mensaje continuará mostrando siempre que tu variables de comparación sean iguales, si lo queres q muestre un mensaje a las 09:01, el mensaje se mostrará hasta que cambie, por ej. 09:02.

Soluciones:
Podes deshabilitar el timer una vez cumplida la hora, cuando haya q mostrar el mensaje.

Podés utilizar una variable para verificar que no hayas mostrado el mensaje antes.

Etc.

Saludos.
__________________
La cantidad total de inteligencia del planeta permanece constante.
La población, sin embargo, sigue aumentando.

COLE


:cool: Los ordenadores no resuelven problemas ... ejecutan soluciones.
Laurent Gasser


Tienes alguna duda :pensando: ? >>> www.google.com :aplauso: <<<
  #4 (permalink)  
Antiguo 01/07/2005, 12:37
Avatar de ccca001  
Fecha de Ingreso: agosto-2004
Mensajes: 388
Antigüedad: 19 años, 7 meses
Puntos: 0
mmm, voy a probar lo que pusieron, aunque yo lo solucione de la siguiente manera:
cree otra variable que utilizo como condicion inicializada en 0 y luego del evento la pongo en 1, la variable vuelve a 0 cuando se cambia la configuracion de hora (horabol) en el programa por el usuario...
asi... si la variable esta en 0 se produce el evento si no, no.
__________________
"How do you define Real?"
  #5 (permalink)  
Antiguo 11/07/2005, 23:52
Avatar de darkhack  
Fecha de Ingreso: marzo-2005
Mensajes: 654
Antigüedad: 19 años, 1 mes
Puntos: 3
si estas utilizando segundos en tu comparacion seria mas facil por decir :
pones tu timer con un intervalo de1000 y le agregas tu condicion de que si alguna variabkle es igual al segundo mande el msj ejemplo:


recibes la hora , los minutos y los segundos, los guardas en una variable (por decir la variable "hora" y despues comparas:
dim hora
Private Sub Timer1_Timer()
Label1.Caption = Hour(Now) & Minute(Now) & Second(Now)
If Label1.Caption =hora Then
msgbox "son las:" & hora
End If
End Sub
__________________
Dios solo nos dio el 0 y el 1 pero con eso hemos hecho maravillas
1er dia te espantas, 2° te desesperas,3° buscas ayuda y 4°....Adios
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 09:39.