添加 Line1 Line2 Line3 Timer1
Dim xx1%, yy1% '宣告變量xx1,yy1為整型(給圓心用的)
Private Sub Form_Load()
Me.AutoRedraw = True '重畫為真
'窗體置中
Me.Move (Screen.Width - Me.Width) \ 2, (Screen.Height - meiheight) \ 2
'計(jì)算圓心的x軸 xx1
xx1 = Me.Width \ 2
'計(jì)算圓心的y軸 yy1
yy1 = (Me.Height - 405) \ 2
'將下面3根針的起點(diǎn)x1,y1全定位在圓心上
Line1.X1 = xx1: Line1.Y1 = yy1
Line2.X1 = xx1: Line2.Y1 = yy1
Line3.X1 = xx1: Line3.Y1 = yy1
'畫鐘的外匡讓線條粗一點(diǎn)
Me.DrawWidth = 5
'畫一個(gè)圓
Me.Circle (xx1, yy1), 950
Line2.BorderWidth = 1 '秒針的粗度
Line2.BorderColor = QBColor(12) '秒針的顏色
Line1.BorderWidth = 2 '分針的粗度
Line1.BorderColor = QBColor(14) '分針的顏色
Line3.BorderWidth = 3 '時(shí)針的粗度
Line3.BorderColor = QBColor(10) '時(shí)針的顏色
Timer1.Interval = 500
End Sub
Private Sub Timer1_Timer()
Me.Caption = Time '標(biāo)題欄顯示現(xiàn)在時(shí)間
' Second Hand '畫秒針
'計(jì)算秒針的角度,每一秒是 360度除以60秒=6度, 所以要乘上6
sdeg = Second(Time) * 6
'vb是以弧度為單位來計(jì)算,所以角度換算弧度是 3.14/180, 秒針跑了N度就乘上N
srad = (3.14 / 180) * sdeg
'900是秒針的長(zhǎng)度,以圓心(line2的x1,y1)為準(zhǔn),計(jì)算出在這個(gè)弧度時(shí)line2.x2在什么位置
Line2.X2 = Line2.X1 + (900 * Sin(srad))
'900是秒針的長(zhǎng)度,以圓心(line2的x1,y1)為準(zhǔn),計(jì)算出在這個(gè)弧度時(shí)line2.y2在什么位置
Line2.Y2 = Line2.Y1 - (900 * Cos(srad))
' Minute Hand '畫分針
'計(jì)算分針的角度,每一分是360度除以60分=6度, 所以要乘上6,秒針動(dòng)分針也會(huì)動(dòng),所以還要加上秒針移動(dòng)所產(chǎn)生的分針移動(dòng).
'秒針轉(zhuǎn)了1圈360度,分針才會(huì)前進(jìn)1分鐘=6度,所以比例是 6/360等于 1/60
Mdeg = Minute(Time) * 6 + (sdeg * 1 / 60)
'vb是以弧度為單位來計(jì)算,所以角度換算弧度是 3.14/180, 分針跑了N度就乘上N
mrad = (3.14 / 180) * Mdeg 'vb是以弧度為單位來計(jì)算,所以角度換算弧度是 3.14/180, 分針跑了N度就乘上N
'750是分針的長(zhǎng)度,以圓心(line1的x1,y1)為準(zhǔn),計(jì)算出在這個(gè)弧度時(shí)line1.x2在什么位置
Line1.X2 = (750 * Sin(mrad)) + Line1.X1
'750是分針的長(zhǎng)度,以圓心(line1的x1,y1)為準(zhǔn),計(jì)算出在這個(gè)弧度時(shí)line1.y2在什么位置
Line1.Y2 = Line1.Y1 - (750 * Cos(mrad))
' Hour Hand '畫時(shí)針
'計(jì)算時(shí)針的角度,每一小時(shí)時(shí)針跑30度,分針動(dòng)時(shí)針也會(huì)動(dòng),所以還要加上分針移動(dòng)所產(chǎn)生的時(shí)針移動(dòng).
'分針轉(zhuǎn)了1圈360度,時(shí)針才會(huì)前進(jìn)1刻劃=30度,所以比例是 30/360等于 1/12
hdeg = Hour(Time) * 30 + (Mdeg / 12)
'vb是以弧度為單位來計(jì)算,所以角度換算弧度是 3.14/180, 時(shí)針跑了N度就乘上N
hrad = (3.14 / 180) * hdeg
'500是時(shí)針的長(zhǎng)度,以圓心(line3的x1,y1)為準(zhǔn),計(jì)算出在這個(gè)弧度時(shí)line3.x2在什么位置
Line3.X2 = (500 * Sin(hrad)) + Line3.X1
'500是時(shí)針的長(zhǎng)度,以圓心(line3的x1,y1)為準(zhǔn),計(jì)算出在這個(gè)弧度時(shí)line3.y2在什么位置
Line3.Y2 = Line3.Y1 - (500 * Cos(hrad))
End Sub