SoloCodigo
Programación General => Visual Basic 6.0 e inferiores => Mensaje iniciado por: Dieguinho. en Miércoles 27 de Diciembre de 2006, 20:33
-
Buenas, tengo una duda. Espero que alguien me puede ayudar.
Tengo en un formulario un control timer que ejecuta ciertos procedimientos cada 30' ( o 30000 milisegundos segun el timer )
Lo que yo quisiera es visualizar en el formulario ese tiempo que queda (en segundos) apareciendo como si fuese una cuenta regresiva.
Alguno me podria tirar una idea como para arrancar??
gracias y saludos.
-
Puedes asignarle a una variable o control Label la propiedad Interval del Timer y cada segundo que vaya pasando se lo descuentas al Label por 1000
-
entonces la respuesta esta en no poner el timer para 30 segundos, sino para 1 segundo. algo asi:
<!--xc1--></div><table border='0' align='center' width='95%' cellpadding='3' cellspacing='1'><tr><td>XCODE </td></tr><tr><td id='XCODE'><!--exc1-->
Dim x As Byte
Private Sub Command1_Click()
Timer1.Enabled = True
x = 30
End Sub
Private Sub Timer1_Timer()
If x = 0 Then
Timer1.Enabled = False
x = 30
Label1 = 0
Else
x = x - 1
Label1 = x
End If
End Sub<!--xc2--></td></tr></table><div class='postcolor'><!--exc2-->
-
eso, eso, eso, eso, por que no lo pense antes, claro le tocaria esperar 30 segundos para que baje en 1 el valor de la variable.
-
mmmmmm?, no entendi, radical :P
el código cuanta de 30 hasta 0 y lo refleja en un label, el tiempo asignado al timer es de 1 segundo, osea 1000 milisegundos, por lo tanto el evento timer se ejecuta cada segundo decrementando x hasta que esta sea = 0 ;)