急求一个VB 时钟程序的设计心得!!!

主要过程的具体实现,要文字解释,一般出现的难题,VB此次时钟编程的学习体会!要好的话,可以多给分!... 主要过程的具体实现,要文字解释,一般出现的难题,VB此次时钟编程的学习体会!

要好的话,可以多给分!
展开
 我来答
静净尽竞
2010-06-20
知道答主
回答量:13
采纳率:0%
帮助的人:0
展开全部
Const RADIAN = 3.1415926 / 180 '定义了一个常量,这个常量的值为 1度的弧度值
Private Sub Form_Load()
Me.AutoRedraw = True '窗体自动重绘
Me.DrawWidth = 3 '线条的宽度
Timer1.Interval = 500 '计时器间隔 0.5秒执行一次 Timer 事件
Timer1.Enabled = True '启动计时器
End Sub

Private Sub Timer1_Timer() '计时器的Timer事件过程
Dim CurrSecond&, CurrMinute&, CurrHour& '定义了三个变量
CurrSecond = Second(Time) * 6 '获取当前秒数,并转换成相应的角度 每秒的间隔是6度
CurrMinute = Minute(Time) * 6 + CurrSecond / 60 '获取当前分数,并转换成相应的角度 每分的间隔是6度,同时+上秒带来的分针的间隔差
CurrHour = (Hour(Time) Mod 12) * 30 + CurrMinute / 12 '同上,计算时针的角度 Mod 12 是因为每12小时一圈,后面的是重复
Me.Cls '先清屏
DrawFinger CurrSecond, 1000 '调用过程,画秒针,长度为1000
DrawFinger CurrMinute, 800 '调用过程 画分针,长度为800
DrawFinger CurrHour, 500 '调用过程 画时针,长度为500
End Sub

Private Sub DrawFinger(Value As Long, Radius As Long) '画指针的过程 Value是角度,Radius长度
Dim i%
Circle (1000, 1000), 1000, vbBlack '画大圆
For i = 0 To 360 Step 30 '这个循环,在窗体上画点(标12个刻度)
PSet (1000 * Sin(RADIAN * i) + 1000, 1000 - 1000 * Cos(RADIAN * i)), vbWhite
Next i

'画指针
Line (1000, 1000)-(Radius * Sin(RADIAN * Value) + 1000, 1000 - Radius * Cos(RADIAN * Value))
End Sub
cwa9958
2010-06-07 · TA获得超过1885个赞
知道大有可为答主
回答量:2504
采纳率:0%
帮助的人:2066万
展开全部
时钟是个很简单的程序,一般是调用系统的时钟,好看的指针要用到图片处理,简单的么用line绘图就可以了,这主要看你的美术怎么样
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式