Comentarios del código de reloj VB
Const RADIAN = 3.1415926 / 180 'Define una constante cuyo valor es el valor en radianes de 1 grado
Private Sub Form_Load()
AutoRedraw = True. 'El formulario se vuelve a dibujar automáticamente
Me.DrawWidth = 3 'El ancho de la línea
Timer1.Interval = 500 'El temporizador ejecuta un evento Timer cada 0,5 segundos
Timer1.Enabled = True 'Iniciar temporizador
End Sub
Private Sub Timer1_Timer() 'Proceso de evento del temporizador
Dim CurrSecondamp ;, CurrMinuteamp; , CurrHouramp; 'Se definen tres variables
CurrSecond = Second(Time) * 6 'Obtiene el número actual de segundos y lo convierte al ángulo correspondiente. El intervalo por segundo es de 6 grados
<. p>CurrMinute = Minute(Time) * 6 CurrSecond / 60 'Obtenga la puntuación actual y conviértala al ángulo correspondiente. El intervalo de cada minuto es de 6 grados y, al mismo tiempo, la diferencia de intervalo entre las manecillas de los minutos causada por. el último segundoCurrHour = (Hour(Time) Mod 12) * 30 CurrMinute / 12 'Igual que arriba, calcula el ángulo de la manecilla de hora Mod 12 porque hace un círculo cada 12 horas, y el el resto se repite
Me.Cls 'Borrar primera pantalla
DrawFinger CurrSecond, 1000 'Llama al proceso, dibuja la segunda mano, la longitud es 1000
DrawFinger CurrMinute, 800 'Llama al proceso para dibujar el minutero, la longitud es 800
DrawFinger CurrHour, 500 'Llama al proceso para dibujar el manecilla de las horas, la longitud es 500
End Sub
Private Sub DrawFinger(Value As Long, Radius As Long) 'El proceso de dibujar el valor del puntero es el ángulo, Radio Longitud
Dim i
Circle (1000, 1000), 1000, vbBlack 'Dibuja un círculo grande
For i = 0 To 360 Paso 30 'Este bucle, en Dibuja puntos en el formulario (12 escalas)
PSet (1000 * Sin(RADIAN * i) 1000, 1000 - 1000 * Cos(RADIAN * i)), vbWhite
Siguiente i
'Dibujar puntero
Línea (1000, 1000)-(Radio * Sin(RADIAN * Valor) 1000, 1000 - Radio * Cos(RADIAN * Valor)) p>
End Sub