Cuando voy a la pestaña Interval solo me deja poner 59999
El caso es que tengo:
Private Sub Timer1_Timer()
actualiza_Click
End Sub
y entonces en la funcion actualiza_Click tengo una funcion que consulta a una BBDD SQL cada 1000msg
Que puedo hacer?
|
|
#1 (permalink) |
![]() Fecha de Ingreso: julio-2005
Mensajes: 95
|
Objeto timer
Cuando voy a la pestaña Interval solo me deja poner 59999 El caso es que tengo: Private Sub Timer1_Timer() actualiza_Click End Sub y entonces en la funcion actualiza_Click tengo una funcion que consulta a una BBDD SQL cada 1000msg Que puedo hacer? Última edición por guif; 13-feb-2008 a las 09:37. |
|
|
|
|
|
#2 (permalink) |
![]() |
Re: Objeto timer
No modifiques el interval, colocalo en 1000 y trabaja con el evento Timer. En ese evento colocas un acumulador que se actualiza cada segundo sumando de uno en uno. Y como dices que al pasar 10 minutos quieres llamar a una funcion solo tienes que colocar la condicion del acumulador cuando llegue a 600 segundos llame la funcion... Me entiendes?
__________________
ホルヘ・ラファエル・マルティネス・レオン |
|
|
|
|
|
#3 (permalink) |
![]() Fecha de Ingreso: julio-2005
Mensajes: 95
|
Re: Objeto timer
no mucho...
Bueno poner el Timer a 1000 no hay problem, pero os cuento mas como lo tengo. Tengo un boton que se llama "actualiza" y dentro pues llamo a la funcion "Funcion_update" La funcion "Funcion_update" tiene dentro:
Código:
por lo que entonces, dentro del timer1 tengo: Timer1.Enabled = True
Código:
entonces... como amplio el tiempo y donde?Private Sub Timer1_Timer()
actualitza_Click
End Sub
|
|
|
|
|
|
#4 (permalink) |
![]() |
Re: Objeto timer
Bueno primero declara una variable por ejemplo xseg como Integer y en el load del Form le asignas el valor 0...
Código:
Con esto despues de pulsar el boton actualizar que llama la funcion que activa el timer, al cabo de 10 minutos llamara al evento click del boton... Ahora solo resta desactivar el timer y asignar el valor de la variable a 0...Private Sub Timer1_Timer() xseg = xseg + 1 If xseg = 600 Then actualiza_Click '600 seg que son 10 minutos End Sub
__________________
ホルヘ・ラファエル・マルティネス・レオン |
|
|
|
|
|
#5 (permalink) |
![]() Fecha de Ingreso: julio-2005
Mensajes: 95
|
Re: Objeto timer
me lio un poco... os cuento como lo tengo:
Código:
Private Sub Funcion_update()
Timer1.Enabled = True
End Sub
Código:
Private Sub actualitza_Click() (realizo una serie de consultas SQL) End Sub
Código:
Entonces, al dar al boton actualitza_Click, donde tendria que poner el codigo que comentas para que me actualize cada 10 minutos???Private Sub Timer1_Timer()
actualitza_Click
End Sub
gracias! |
|
|
|
|
|
#6 (permalink) |
![]() |
Re: Objeto timer
Mi pregunta es donde llamas a Funcion_update?
Quedaria como esto:
Código:
Private Sub Funcion_update()
Timer1.Enabled = True
End Sub
Private Sub actualitza_Click()
'consultas SQL
End Sub
Private Sub Timer1_Timer()
xseg = xseg + 1
If xseg = 600 Then
xseg=0
actualitza_Click '600 seg que son 10 minutos
end if
End Sub
__________________
ホルヘ・ラファエル・マルティネス・レオン |
|
|
|
|
|
#8 (permalink) |
![]() Fecha de Ingreso: julio-2005
Mensajes: 95
|
Re: Objeto timer
he modificado la función un poco.
El interval del timer1 lo he puesto a 1000. Luego, he puesto lo siguiente en TIMER1.:
Código:
en la linia: Static Temp_Seg As Long Temp_Seg = Temp_Seg + 1 If (Temp_Seg * 60) >= (5 * 60) * 60 Then Temp_Seg = 0 actualitza_Click 'mi funcion End If
Código:
donde pongo 5, me actualizaria cada 5 minutos, pero si pongo 10 me da error. Porque sucede esto??If (Temp_Seg * 60) >= (5 * 60) * 60 Then |
|
|
|
|
|
#9 (permalink) |
![]() Fecha de Ingreso: febrero-2007
Mensajes: 424
|
Re: Objeto timer
hola,guif no es tan complicado,mira el Timer de visual basic 6 solo aguanta ese valor porque es el valor de 64 bits...en visual basic net esto aguanta mas porque el valor de las variable y de los tipos de datos se incrementaron muchisimo..con esto podes hacer que el timer aguante lo que vos quieras:
Código:
Dim Tiempo As Double Private Sub Timer1_Timer() Tiempo = Tiempo + 1 If Tiempo = 240 Then 'aca el codigo que queres hacer al llegar al tiempo que queres Tiempo = 0 End If End Sub tambein podes usar las api's SetTimer,killTimer para crearte un timer mediante las api's de windows,que no tiene un limite tan poco como el timer y es mas exacto tambien.
__________________
" Todos Somos Ignorantes; lo que pasa es que no todos ignoramos las mismas cosas " - Albert Einstein |
|
|
|
|
|
#10 (permalink) |
![]() |
Re: Objeto timer
Cita:
Por que no lo colocas la condicion directa y sencilla como te respondio seba123neo?? If (Temp_Seg * 60) >= (5 * 60) * 60 Then
Cita:
Dim Tiempo As Double
Private Sub Timer1_Timer() Tiempo = Tiempo + 1 If Tiempo = 240 Then 'aca el codigo que queres hacer al llegar al tiempo que queres Tiempo = 0 End If End Sub
__________________
ホルヘ・ラファエル・マルティネス・レオン |
|
|
|