Cronometro en visual basic 6

Necesito crear un cronometro en visual
Basic que se incremente en dinero a medida que el tiempo avanza.
Es un controlador de un salón de pool
Es lo único que me falta para terminar
Con un trabajo que me dieron en la universidad

1 Respuesta

Respuesta
1
Primero debes crear un form con 4 labels (Label1 ... Label4), 2 botones (Command1 y Command2) y un Timer (Timer1).
Lo que hace el form es sencillo: Cuando inicias el alquiler de una mesa haces clic en el Command1 el cual marca la hora de inicio y activa el Timer. Este tiene intervalo de 1 segundo (Interval=1000) y va llevando el tiempo segundo a segundo (utiliza la función DateDiff que resta dos fechas u horas), al mismo tiempo actualiza el costo del alquiler. Para terminar el alquiler de la mesa, se hace clic en el Command2 y se desactiva el Timer.
Pruébalo y me lo comentas.
Ah! Este form controla solo 1 mesa. Para varias, podrías utilizar un array o una tabla para almacenar el número de mesa, su hora de inicio y si esta en uso o no.
Espero haberte sido útil y a ver si me gano mis primeros 5 puntos.
Este es el código del form:
Option Explicit
Const TarifaHora = 6 ' Costo del alquiler de una mesa por hora (lo puedes cambiar)
Private Sub Command1_Click()
' Marca el inicio del alquiler de la mesa
Label1. Caption = FormatDateTime(Now(), vbLongTime) ' Obtiene la hora de inicio
Timer1.Enabled = True
End Sub
Private Sub Command2_Click()
' Marca el término del alquiler de la mesa
DiferenciaHoraria
Timer1.Enabled = False
End Sub
Private Sub Timer1_Timer()
' Actualiza el tiempo transcurrido cada segundo
DiferenciaHoraria
DoEvents
End Sub
Private Sub DiferenciaHoraria()
' Obtiene la diferencia entre las dos horas
Dim TiempoTranscurrido As Long
Label2.Caption = FormatDateTime(Now(), vbLongTime) ' Obtiene la hora actual
TiempoTranscurrido = DateDiff("s", Label1.Caption, Label2.Caption) ' Obtiene la diferencia de horas
' Las siguientes líneas visualizan el tiempo transcurrido y el pago con el formato adecuado
Label3.Caption = "Tiempo: " & Format(Int(TiempoTranscurrido / 60), "00") & ":" & Format(TiempoTranscurrido Mod 60, "00") & " minutos."
Label4.Caption = "Costo: $ " & Format(TiempoTranscurrido / 3600 * TarifaHora, "0.00")
End Sub

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas