Calcular tiempo entre dos horas en VbNet

Un saludo programadores, y un saludo especial a todos los seguidores de mis aportes, gracias por su apoyo. Bueno en esta ocasión les traigo un tema en particular, si en efecto, ya que necesitaba de urgencia desarrollar un tema así  para poder cumplir con necesidades en mi trabajo.

El ejemplo en si, trata de calcular  el tiempo entre dos horas mediante el uso de controles como DateTimePicker para  la primera forma y usando Textbox para la segunda forma de cálculo. les dejo un captura de mi programa para que se puedan referir:



Como se puede observar las dos maneras que les presento calcula igual el intervalo de tiempo transcurrido entre las dos horas, Para la segunda forma, al ejecutar se debe ingresar la hora con separación de punto es decir: si  son las 14:12, ingresar 14.12 y el sistema automáticamente transforma a  formato tiempo en horas y minutos y se desplaza con Enter. 

Public Class Form1
    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)Handles Button1.Click
        Dim cadena As String
        cadena = String.Format("{0:t0}", (timefinal.Value - Timeinicial.Value))
        TextBox1.Text = cadena.Substring(0, 5)
    End Sub
    Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
    End Sub
    Sub Restar_Horas()
        Dim final As String = txtfinal.Text
        Dim inicial As String = txtinicial.Text
        Dim tiempoI As TimeSpan = TimeSpan.Parse(inicial)
        Dim tiempoF As TimeSpan = TimeSpan.Parse(final)
        Dim resta As TimeSpan = tiempoF - tiempoI
        txtres.Text = resta.ToString
    End Sub
    Private Sub Button2_Click(sender As Object, e As EventArgs) Handles Button2.Click
        Restar_Horas()
    End Sub
    Private Sub txtinicial_KeyPress(sender As Object, e As KeyPressEventArgs)Handles txtinicial.KeyPress
        If e.KeyChar = ChrW(Keys.Enter) Then
            e.Handled = True
            SendKeys.Send("{TAB}")
        End If
        If e.KeyChar = (".") Then
            e.Handled = True
            SendKeys.Send(":")
        End If
    End Sub
    Private Sub txtfinal_KeyPress(sender As Object, e As KeyPressEventArgs)
 Handles txtfinal.KeyPress
        If e.KeyChar = ChrW(Keys.Enter) Then
            e.Handled = True
            SendKeys.Send("{TAB}")
        End If
        If e.KeyChar = (".") Then
            e.Handled = True
            SendKeys.Send(":")
        End If
    End Sub
End Class
 

Y eso es todo, espero con gusto sus comentarios, cuídense y les adjunto mi programa









Comentarios

  1. amigo se ve muy buena su aplicacion pero necesito k me explique el codigo porfavor o me envie el documento

    de antemano muchas gracias

    ResponderEliminar
    Respuestas
    1. Si puedes ver al final de mi post esta el link de descarga de descarga de este ejemplo

      Eliminar
  2. creo que el archivo fue removido o el link no es por que no se puede descargar

    ResponderEliminar
  3. amigo muchas gracias es exacto lo que estaba buscando gracias por dejar el link de descarga y compartir

    ResponderEliminar
  4. Que interesante, sabes me parece que seria bueno este calculo de tiempo en automático como por ejemplo para calcular el tiempo en que alguien pasa en un sistema desarrollado también en visual que tome como referencia el momento que entra al sistema y el momento que le da click al botón de salir eso sumado a almacenar esas horas en una base de datos, con eso administro el tiempo de los usuarios del sistema.....seria excelente

    ResponderEliminar

Publicar un comentario

Entradas populares de este blog

Imprimir directamente ReportViewer a impresora predeterminada

DevComponents DotnetBar 12.5.0.2

Metodo Iterativo Gauss-Seidel en Visual Basic