recordar cumpleaños y avisar en la fecha

Iniciado por Don_K, 30 Noviembre 2008, 12:43 PM

0 Miembros y 1 Visitante están viendo este tema.

Don_K

 :D muy buenas a todos amigos....llevaba tiempo sin venir por aqui.....bueno lo que les queria decir lo primero..muchas gracias  por atenderme y lo segundo....pues haber estaba haciendo una agenda pero me di cuenta de que no se como hacer para recordar el cumpleaños (esto si) y que luego cuando lllegue la fecha del cumpleaños se active un mensaje de infromación.....
yo lo hago con un if then else....pero me sube la cpu a 58%.....porque hago esto:

empezar:
If Date = #11/29/2008# then .......
else goto empezar
end if

o si lo hago con respecto a una hora....

empezar:
If Time = #12:00 PM# then .......
else goto empezar
end if


:( :( :( :( :( :( :(
bueno muchas gracias a todos y por favor si puede ser respondan.....no tengo mucha prisa ...y graciaas


Karcrack

Claro, te sube la CPU al 58% porque estas haciendo un bucle laaaaaaaargisimo :xD

Lo que has de hacer es, por ejemplo, comprobar la variable (fecha o hora) a un intervalo diferente, por ejemplo, para comprobar la fecha con hacerlo una vez al dia sobra...

Para hacer lo de la fecha puedes agregar tu aplicacion al inicio de windows y comprobar cada vez que se ejecuta....

Para la hora puedes usar un timer...

Bueno, puedes hacerlo de muchisimas formas diferentes, con tal de que no uses un bucle como ese sobra :xD

Saludos :D

& eDu &

En la propiedad load del formulario haz el if.

Código (vb) [Seleccionar]
IF Date = #11/29/2008# Then
MsgBox "Hoy es tu cumpleaños"
else
End IF

Spider-Net


& eDu &

Bueno, si quieres escribir en un label que aun no es la fecha... x'dd

Don_K

wei siento aber tardado tanto....jodi l disco duro dl pc d sobremesa.,,,,al tiempo m kompre un prtatil...i porfin e averiguao la web donde puse este comment.....
abeeer tengo la SOLUCIIIIIOOOOOOOOOOOOOON
lo primero muxas gracias a todos por la ayuda.....eso ai k decirlo..... i lo siguiente
tras haber estado pensando muxiiisimooooooooooo tiempo.....unas 60-100h sobre esto (diferentes dias) s m ocurrio kmo hacerlo....es completamente facil..klaro k io lo descarte xk pensaba k seguiria subiendo la cpu al 60 %pero nooo ajjaja
como pueden ver s solamente un timer ajjaja k weno


ABER LES PASO EL CODE:

Private Sub Form_Load()
Timer1.Enabled = True    'activamos el timer 1
Timer1.Interval = 5000   'este s puede cambiar x l k kieras dependiendo
End Sub

Private Sub Timer1_Timer()
If Hour(Time) = 16 Then            'k kompare SOLAMENTE LA HORA no los minutos ni
                                                'los segundos
msgBox ("son las 4 d la tarde")    'mensaje d k abise...blablabla
End If

End Sub

& eDu &

Yo pondría de intervalo 1, por si abre el programa a las 16:56

Don_K

#7
ya pero entonces no seria asi...... seria poner..:


Time = #16:56:00 PM#  'este tiene en cuenta las horas minutos y segundos

y no (Hour)Time = 16         ' este solo tiene en cuenta la hora (hour)

eso es todoooooo ajaj
y con 5000 de timer kreo k esta bien.....eso creo ajaja


& eDu &

No, porque el timer solo lo comprobará cada 5 segundos, y si lo abre a 16:59:59 no pasarán 5 segundos y pasara a Hour(Time) = 17

seba123neo

simplemente haces una llamada al evento del Timer y te ahorras ese problema...

Código (vb) [Seleccionar]
Private Sub Form_Load()
    Call Timer1_Timer
End Sub


saludos.
La característica extraordinaria de las leyes de la física es que se aplican en todos lados, sea que tú elijas o no creer en ellas. Lo bueno de las ciencias es que siempre tienen la verdad, quieras creerla o no.

Neil deGrasse Tyson