vb中怎樣做出時鐘,怎麼用VB來製作時鐘

時間 2022-02-01 18:15:02

1樓:匿名使用者

vb可使用timer控制項、line控制項和繪圖或載入**等製作指標式時鐘。

timer 控制項,通過引發 timer 事件,timer 控制項可以有規律地隔一段時間執行一次**。

line 控制項,line 控制項是圖形控制項,它顯示水平線、垂直線或者對角線。

執行時不能使用 move 方法移動 line 控制項,但是可以通過改變 x1、x2、y1 和 y2

屬性來移動它或者調整它的大小。

circle 方法,在物件上畫圓、橢圓或弧。

option explicit

private const pi = 3.1415926

dim x(1) as single, y(1) as single

dim oriangle as single, destangle as single, r as single

private sub rotateline(objl as line, bspointx as single, bspointy as single, rotateangle as single)

with objl

x(0) = .x1

y(0) = .y1

x(1) = .x2

y(1) = .y2

end with

dim i as integer

for i = 0 to 1

if x(i) - bspointx <> 0 then

oriangle = atn((y(i) - bspointy) / (x(i) - bspointx))

else

oriangle = iif(y(i) > bspointy, pi / 2, 1.5 * pi)

end if

if x(i) - bspointx < 0 then

if oriangle < 0 then

oriangle = pi - abs(oriangle)

else

oriangle = pi + abs(oriangle)

end if

end if

destangle = oriangle + rotateangle

r = sqr((x(i) - bspointx) ^ 2 + (y(i) - bspointy) ^ 2)

x(i) = bspointx + r * cos(destangle)

y(i) = bspointy + r * sin(destangle)

next i

with objl

.x1 = x(0)

.y1 = y(0)

.x2 = x(1)

.y2 = y(1)

end with

end sub

private sub form_load()

timer1.interval = 1000

dim i as long

for i = 1 to val(mid(time$, 7, 2))

rotateline line3, line3.x1, line3.y1, 1 * pi / 30

next

for i = 1 to val(mid(time$, 4, 2))

rotateline line2, line2.x1, line2.y1, 1 * pi / 30

next

for i = 1 to val(mid(time$, 1, 2)) * 5 '對時針

rotateline line1, line1.x1, line1.y1, 1 * pi / 30

next

for i = 1 to val(mid(time$, 4, 2)) '對時針

rotateline line1, line1.x1, line1.y1, 1 * pi / 360

next

end sub

private sub timer1_timer()

rotateline line3, line3.x1, line3.y1, 1 * pi / 30

rotateline line2, line2.x1, line2.y1, pi / 1800

if mid(time$, 7, 2) = "00" or mid(time$, 7, 2) = "30" then

rotateline line1, line1.x1, line1.y1, 1 * pi / 720

end if

me.caption = time$

end sub

2樓:

'timer1的interval屬性設為1000

'建議form1的width屬性設為2595,height屬性設為2535

dim a as integer, b as integer, rad as double

private sub form_load()

a = me.scalewidth \ 2 '圓心x座標

b = me.scaleheight \ 2 '圓心y座標

rad = atn(1) / 45 '1角度的弧度數

me.drawwidth = 2

end sub

private sub timer1_timer()

dim angle1 as double, angle2 as double, angle3 as double

angle1 = ((hour(now) mod 12) * 30 + minute(now) / 2 - 90) * rad '時針的角度

angle2 = (minute(now) * 6 + second(now) / 10 - 90) * rad '分針的角度

angle3 = (second(now) * 6 - 90) * rad '秒針的角度

cls '清除畫面,以便畫下一秒的狀態

me.circle (a, b), 720 '畫石英鐘輪廓

for i = 1 to 12

me.currentx = a - iif(i < 7, 115, 170) + 600 * cos((i * 30 - 90) * rad) '刻度x座標

me.currenty = b - 90 + 600 * sin((i * 30 - 90) * rad) '刻度y座標

print i '畫刻度

next

me.line (a, b)-(a + 300 * cos(angle1), b + 250 * sin(angle1)), vbblue '畫時針

me.line (a, b)-(a + 400 * cos(angle2), b + 550 * sin(angle2)), vbblue '畫分針

me.line (a, b)-(a + 600 * cos(angle3), b + 600 * sin(angle3)), vbred '畫秒針

end sub

3樓:

請問你是用vb2005嗎?如果用vb2005做這個題非常地簡單.

在窗體是用label1設定乙個label1.text框.然後雙擊label1,進入**編輯器,在這裡輸入label1.text=timestring

label1.text=now()'這是vb6.0的就可以實現乙個會走的時鐘啦.

如果同時還想實現日期功能,就把上面的**改成label1.text=datestring

那個timer控制項的屬性就這樣設定

timer1.enabled=true

timer1.interval=1000

這樣就可以了.

到時你們可能還會做乙個關於倒計時器的程式,這可就沒有像時鐘這樣簡單咯,具體做法我的空間有,你可以看一下吧.

怎麼用vb來製作時鐘

4樓:匿名使用者

建乙個text 乙個timer

在timer中寫入**:

text1.text=now

時間迴圈為100ok

vb中print語句怎麼用,VB中Print語句怎麼用?

樓主如果還是做不出來的話,可以把郵箱留下,我把我用vb6.0做的乙個例子給你發過去,解壓之後就能執行了,你可以參考下。好像你的郵箱是qinyehong 126.com是吧?我已經發過去了。 豆漠義友珊 print a 是輸出字串a 就是直接輸出引號內的。print a是輸出程式內 a的當前值 pri...

vb中的left怎麼用啊,vb中left函式的使用

vb妮可 private sub timer1 timer if label1.left 0 label1.width then left,就是控制項最左邊緣在螢幕中的位置,你這樣想,如果控制項的left 0了,就說明控制項緊挨著窗體的左邊緣了,可是這時候,讓它轉換到右邊去,就會不完美,比如這個標籤...

Vb的Call語句是什麼來的,vb中的call有什麼用???

白渡 vb裡call用來呼叫函式或者過程,不過那是過去的用法了。在vb6裡只要把過程名或者函式名寫在要執行的地方就行了,很久以前是要在前面加上call的 過程sub subpro a,b c a b end sub 函式function funpro a,b as integerfunpro a b...