Foros aprenderaprogramar.com
Aprender a programar => Aprender a programar desde cero => Mensaje iniciado por: crazymonkey84 en 03 de Febrero 2017, 11:02
-
Buenas madrugadas!
aqui un novato intentando dar con bola!!
Estoy tratando de lograr una resta de horas en VB 2010 Express, el codigo funcionaba en VB6 mas no se que haya cambiado y no funciona aca...
Este es mi form:
(http://s2.subirimagenes.com/otros/previo/thump_9681399form.jpg)
este es mi codigo:
(http://s2.subirimagenes.com/otros/previo/thump_9681400codigo.jpg)
funciona a medias al ponerle play
(http://s2.subirimagenes.com/otros/previo/thump_9681401ejecucion.jpg)
y me marca este error
(http://s2.subirimagenes.com/otros/previo/thump_9681402error.jpg)
de antemano muchas gracias por su ayuda!!
Pegando el codigo:
Public Class Form1
Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
Label1.Text = TimeOfDay.ToString("HH:mm:ss")
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Label2.Text = Label1.Text
End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
Dim t1, t2, t3 As Object
Label3.Text = Label1.Text
t1 = Format(Label1.Text, "HH:mm:ss")
t2 = Format(Label2.Text, "HH:mm:ss")
t3 = Format(Label3.Text, "HH:mm:ss")
Label4.Text = Format(TimeValue(t3) - TimeValue(t2), "HH:mm:ss")
End Sub
End Class
Saludos!
-
aun no doy con bola hahaha
algun alma piadosa que sepa la respuesta?
le hice un upgrade de vb6 a vb express2008 luego a vb express 2010 y me arroja este codigo:
Label4.Text = VB6.Format(System.DateTime.FromOADate(TimeValue(t3).ToOADate - TimeValue(t2).ToOADate), "hh:mm:ss")
y funciona pero solo en ese proyecto "upgradiado", no me funciona si empiezo un proyecto de ceros en vb express 2010.
Alguien que me pueda ayudar a que funcione sin tener que hacer upgrade??
Muchas Gracias de antemano
Saludos
-
He visto este ejemplo de cómo calcular diferencias entre fechas-horas, lo dejo por si le sirve a alguien:
Dim startTime As New DateTime(2069, 9, 19, 10, 30, 0) ' 10:30 AM de un año
Dim endTime As New DateTime(2069, 9, 20, 2, 0, 0) ' 2:00 AM del día siguiente
Dim duration As TimeSpan = endTime - startTime 'Calcular la diferencia entre ambas fechas
Console.WriteLine(duration)
Resultado en horas minutos segundo:
15:30:00
Si se quiere convertir el resultado a minutos se puede usar la propiedad TotalMinutes de las variables TimeSpan
Console.WriteLine(duration.TotalMinutes)
Resultado:
930