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...