En esta oportunidad quisiera mostrarles cómo crear un cronómetro en visual basic .net utilizando el componente timer.
Bueno, no pretendo que este sea un ejemplo paso a paso mostrando cada una de las propiedades modificadas de cada control, muy por el contrario, me quiero concentrar en la funcionalidad del cronómetro y les dejaré el diseño a ustedes. Simplemente les mostraré el que hice yo.
Los controles a utilizar son: un formulario, tres botones y dos etiquetas. Tambien necesitaremos agregar al formulario un componente Timer. Se vería mas o mes así:

bien, lo primero que haremos será definir cuatro variables privadas a nivel del formulario.
Private hora As Integer = 0 Private minuto As Integer = 0 Private segundo As Integer = 0 Private milisegundo As Integer = 0
El componente Timer debe tener su propiedad interval en 100.
Crearemos una función para mostrar en el label1 el paso del tiempo:
Sub mostrarTiempo()
Label1.Text = hora.ToString.PadLeft(2, "0") & ":"
Label1.Text &= minuto.ToString.PadLeft(2, "0") & ":"
Label1.Text &= segundo.ToString.PadLeft(2, "0") & ":"
Label1.Text &= milisegundo.ToString.PadLeft(1, "0")
Label1.Refresh()
End Sub
En el evento tick del componente Timer es donde se desarrolla toda la lógica del cronómetro. Copia el siguiente código allí:
milisegundo += 1
If milisegundo = 9 Then
milisegundo = 0
segundo += 1
If segundo = 59 Then
segundo = 0
minuto += 1
If minuto = 59 Then
minuto = 0
hora += 1
End If
End If
End If
mostrarTiempo()
Bueno, solo resta el código de los tres botones. El botón iniciar activa el timer:
Timer1.Enabled = True
El botón Pausa detiene el timer:
Timer1.Enabled = False
Y el botón volver a cero resetea los valores de las variables:
hora = 0 minuto = 0 segundo = 0 milisegundo = 0 mostrarTiempo()
Espero que este ejemplo no les resulte complicado y por sobre todo que les sea util. Por último les dejo una captura del cronómetro en funcionamiento:

Información Bitacoras.com…
Valora en Bitacoras.com: En esta oportunidad quisiera mostrarles cómo crear un cronómetro en visual basic .net utilizando el componente timer. Bueno, no pretendo que este sea un ejemplo paso a paso mostrando cada una de las propiedades modificadas de…
Muchas gracias me fue muy util apenas comienzo con .net y muy bien descrito .
Adios.
estan muy buenos los ejemplos…y gracias por aportar los conocimientos qya tiens para los q recien empezamos…
Hola!!!
px muchas gracias fue de muchisima ayuda tu codigo me sirvio es mas me salvo la vida jajaja…
no muy trabajo gracias…
chao bye kuidate…
Muchas gracias man… sin complicaciones este ejemplos, muy muy bueno, que dios te ayude a ti igual…
Muy buen Aporte te felicito sigue asi !!!
muchas gracias me ha servido mucho
El cronometro esta bien solo que no cuenta el tiempo 00:01:59:0 el segundo 59 no lo cuenta del 58 salta a 00 y el 59 que no existe, checa tu codigo por favor
La solucion seria asi
Milisegundo += 1
If Milisegundo = 10 Then
Milisegundo = 0
Segundo += 1
If Segundo = 60 Then
Segundo = 0
Minuto += 1
If Minuto = 60 Then
Minuto = 0
Hora += 1
End If
End If
End If
MostrarTiempo()
De esta manera el segundo o minuto 59 existiria pero se agradece el aporte.
Muy bueno, muchas gracias!!!! me salió a mi que soy duranga
GRACIAS!!! por el ejemplo me desperto la logica xq realice un mega proyecto evaluando este ejemplo espero sigan suviendo ejemplo de esta magnitud Dios los bendiga
Soy nuevo programando haci realice mi proyecto.
Public Class Form1
Private hora As Integer = 0
Private minuto As Integer = 0
Private segundo As Integer = 0
Private milisegundo As Integer = 0
Sub mostrarTiempo()
Label1.Text = hora.ToString.PadLeft(2, “0″) & “:”
Label1.Text &= minuto.ToString.PadLeft(2, “0″) & “:”
Label1.Text &= segundo.ToString.PadLeft(2, “0″) & “:”
Label1.Text &= milisegundo.ToString.PadLeft(1, “0″)
Label1.Refresh()
End Sub
Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
milisegundo += 1
If milisegundo = 9 Then
milisegundo = 0
segundo += 1
If segundo = 59 Then
segundo = 0
minuto += 1
If minuto = 59 Then
minuto = 0
hora += 1
End If
End If
End If
mostrarTiempo()
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Timer1.Enabled = True
End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
Timer1.Enabled = False
End Sub
Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click
End
End Sub
Muchas Gracias por el aporte
Buen código !!
Buen codigo….me sirvio a la perfeccion corregido el error ya mencionado….gracias