VB编写小时钟程序

VB编写小时钟程序,第1张

使用timer控件进行计时

使用全局数组变量进行多人同时计时,用text控件来设置人数

使用数学函数(如sin,cos)和时间函数(如:hour,second)实现动态指针时钟

呵呵,本转一个VB吧主CBM666写的时钟代码

'添加 Line1 Line2 Line3 Timer1

Dim xx1%, yy1% '宣告变量xx1,yy1为整型(给圆心用的)

Private Sub Form_Load()

MeAutoRedraw = True '重画为真

'窗体置中

MeMove (ScreenWidth - MeWidth) \ 2, (ScreenHeight - meiheight) \ 2

'计算圆心的x轴 xx1

xx1 = MeWidth \ 2

'计算圆心的y轴 yy1

yy1 = (MeHeight - 405) \ 2

'将下面3根针的起点x1,y1全定位在圆心上

Line1X1 = xx1: Line1Y1 = yy1

Line2X1 = xx1: Line2Y1 = yy1

Line3X1 = xx1: Line3Y1 = yy1

'画钟的外匡让线条粗一点

MeDrawWidth = 5

'画一个圆

MeCircle (xx1, yy1), 950

Line2BorderWidth = 1 '秒针的粗度

Line2BorderColor = QBColor(12) '秒针的颜色

Line1BorderWidth = 2 '分针的粗度

Line1BorderColor = QBColor(14) '分针的颜色

Line3BorderWidth = 3 '时针的粗度

Line3BorderColor = QBColor(10) '时针的颜色

Timer1Interval = 500

End Sub

Private Sub Timer1_Timer()

MeCaption = Time '标题栏显示现在时间

' Second Hand '画秒针

'计算秒针的角度,每一秒是 360度除以60秒=6度, 所以要乘上6

sdeg = Second(Time) 6

'vb是以弧度为单位来计算,所以角度换算弧度是 314/180, 秒针跑了N度就乘上N

srad = (314 / 180) sdeg

'900是秒针的长度,以圆心(line2的x1,y1)为准,计算出在这个弧度时line2x2在什么位置

Line2X2 = Line2X1 + (900 Sin(srad))

'900是秒针的长度,以圆心(line2的x1,y1)为准,计算出在这个弧度时line2y2在什么位置

Line2Y2 = Line2Y1 - (900 Cos(srad))

' Minute Hand '画分针

'计算分针的角度,每一分是360度除以60分=6度, 所以要乘上6,秒针动分针也会动,所以还要加上秒针移动所产生的分针移动

'秒针转了1圈360度,分针才会前进1分钟=6度,所以比例是 6/360等于 1/60

Mdeg = Minute(Time) 6 + (sdeg 1 / 60)

'vb是以弧度为单位来计算,所以角度换算弧度是 314/180, 分针跑了N度就乘上N

mrad = (314 / 180) Mdeg 'vb是以弧度为单位来计算,所以角度换算弧度是 314/180, 分针跑了N度就乘上N

'750是分针的长度,以圆心(line1的x1,y1)为准,计算出在这个弧度时line1x2在什么位置

Line1X2 = (750 Sin(mrad)) + Line1X1

'750是分针的长度,以圆心(line1的x1,y1)为准,计算出在这个弧度时line1y2在什么位置

Line1Y2 = Line1Y1 - (750 Cos(mrad))

' Hour Hand '画时针

'计算时针的角度,每一小时时针跑30度,分针动时针也会动,所以还要加上分针移动所产生的时针移动

'分针转了1圈360度,时针才会前进1刻划=30度,所以比例是 30/360等于 1/12

hdeg = Hour(Time) 30 + (Mdeg / 12)

'vb是以弧度为单位来计算,所以角度换算弧度是 314/180, 时针跑了N度就乘上N

hrad = (314 / 180) hdeg

'500是时针的长度,以圆心(line3的x1,y1)为准,计算出在这个弧度时line3x2在什么位置

Line3X2 = (500 Sin(hrad)) + Line3X1

'500是时针的长度,以圆心(line3的x1,y1)为准,计算出在这个弧度时line3y2在什么位置

Line3Y2 = Line3Y1 - (500 Cos(hrad))

End Sub

Dim s

Private Sub Command1_Click()

Timer1Enabled = True

End Sub

Private Sub Command2_Click()

Timer1Enabled = False

End Sub

Private Sub Command3_Click()

Text2Text = ""

Text3Text = "0"

s = 0

End Sub

Private Sub Command4_Click()

End

End Sub

Private Sub Form_Load()

Form1Caption = "综合应用"

Label1Caption = "现在时间:"

Label2Caption = "计时(秒):"

Label3Caption = "总用时(秒):"

Text1Text = ""

Text2Text = ""

Text3Text = "0"

Command1Caption = "开始"

Command2Caption = "停止"

Command3Caption = "重新计时"

Command4Caption = "关闭"

s = 0

Timer1Interval = 1000

Timer1Enabled = False

Timer2Interval = 1000

Timer2Enabled = True

End Sub

Private Sub Timer1_Timer()

s = s + 1

Text2Text = s

Text3Text = s

End Sub

Private Sub Timer2_Timer()

Text1Text = Now

End Sub

最简单的时钟

控件:Timer 1个

label 1个

CommandButton 1个

代码:

Private Sub Command1_Click()

Timer1Enabled = True

End Sub

Private Sub Form_Load()

Timer1Enabled = True

Timer1Interval = 100

End Sub

Private Sub Timer1_Timer()

Label1Caption = Time

End Sub

计算器就更简单,除了代码繁复,没有什么难度,我已经做了好多次了。

你要什么样的?带积分和初等函数的要吗?还是只是简单的四则运算?

以上就是关于VB编写小时钟程序全部的内容,包括:VB编写小时钟程序、用vb设计一个可走动的机械式时钟,要求有时针、分针、秒针。、vb模拟时钟代码 用菜单调整时间 设置闹钟 有背景 数字时钟和模拟时钟相互转换等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zz/10133422.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-05
下一篇2023-05-05

发表评论

登录后才能评论

评论列表(0条)

    保存