我是一名数学教师,因为《认识时间》里要用到一个时钟,目前在网上没有找到合适的,而手头中的一个也差强人意。只是有点瑕疵——现在这时针和分针的转速太快了。不知道有没有高手愿意帮我把时钟的转速调慢点。
附上原代码:
Option ExplicitConst pi = 3.141592653
Dim j As IntegerDim IsMod As BooleanPublic Function DoTime(ByVal TimeA As Date) As Boolean
    Dim s As Single
    Dim m As Single
    Dim h As Single
    
    Dim Len_M As Long
    Dim Len_H As Long
    
    s = Second(TimeA)
    
    m = Minute(TimeA)
    
    h = Hour(TimeA) + m / 60
    
    Dim TempH As Long
    TempH = Hour(TimeA)
    
    If TempH > 12 Then
        TempH = TempH - 12
    End If
    
    
    If IsMod = True Then
        If m Mod 5 = 0 Then
        Else
            m = m - (m Mod 5)
        End If
    Else    End If
    
    Label1.Caption = "时间:" & TempH & ":" & IIf(m < 10, "0" & m, m)
    'Text1.Text = TempH & ":" & IIf(m < 10, "0" & m, m)
    
    Len_M = 3500
    Len_H = 2500
    
    'LineS.X2 = LineS.X1 + Len_S * Sin(PI * s / 30)
    '
    'LineS.Y2 = LineS.Y1 - Len_S * Cos(PI * s / 30)
    
    LineM.X2 = LineM.X1 + Len_M * Sin(pi * m / 30)
    
    LineM.Y2 = LineM.Y1 - Len_M * Cos(pi * m / 30)
    
    If h > 12 Then h = h - 12
    
    LineH.X2 = LineH.X1 + Len_H * Sin(pi * h / 6)
    
    LineH.Y2 = LineH.Y1 - Len_H * Cos(pi * h / 6)
End FunctionPrivate Sub Check1_Click()    If Check1.Value = 1 Then
        Label1.Visible = True
    Else
        Label1.Visible = False
    End IfEnd SubPrivate Sub Command1_Click()    IsMod = False
    
    If Timer1.Enabled = True Then
        
    Else
        KaiGuan
        Timer1.Enabled = True
    End If
    
    Command1.Enabled = False
    
End SubPrivate Sub Command2_Click()    If Command2.Caption = "暂停A" Then
        KaiGuan
        IsMod = True
        Timer1.Enabled = False
        
        Dim TimeS As Date
        TimeS = Time
        j = j + 1
        TimeS = DateAdd("n", j, TimeS)
        DoTime TimeS
    
        Command2.Caption = "继续"
        Command3.Enabled = False
    Else
        KaiGuan
        IsMod = False
        Command2.Caption = "暂停A"
        Timer1.Enabled = True
        Command3.Enabled = True
    End If
    
End SubPrivate Sub Command3_Click()
    If Command3.Caption = "暂停B" Then
        KaiGuan
        IsMod = False
        Timer1.Enabled = False
        Command3.Caption = "继续"
        Command2.Enabled = False
    Else
        KaiGuan
        IsMod = False
        Command3.Caption = "暂停B"
        Timer1.Enabled = True
        Command2.Enabled = True
    End If
End SubPrivate Sub Command4_Click()
On Error GoTo Err
        Dim TimeS As Date
        TimeS = CDate(Text1.Text)
        DoTime TimeS
        Exit Sub
Err:
        MsgBox Err.Description
End SubPrivate Sub Form_Load()
    j = 1
    Form1.Caption = "石英钟"
    Dim TimeS As Date
    TimeS = Time
    DoTime TimeS
End SubPrivate Sub Timer1_Timer()    Dim TimeS As Date
    TimeS = Time
    j = j + 1
    TimeS = DateAdd("n", j, TimeS)
    DoTime TimeS
End Sub
Public Function KaiGuan() As BooleanEnd Function