| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1340 人关注过本帖
标题:几行代码就实现一个图形时钟程序
只看楼主 加入收藏
ioriliao
Rank: 7Rank: 7Rank: 7
来 自:广东
等 级:贵宾
威 望:32
帖 子:2829
专家分:647
注 册:2006-11-30
结帖率:78.95%
收藏
 问题点数:0 回复次数:7 
几行代码就实现一个图形时钟程序
源码:
时钟.rar (7.97 KB)

效果:
图片附件: 游客没有浏览图片的权限,请 登录注册

程序代码:
Private Const PI = 3.14159265

Private Sub Form_Load()
   Me.Scale (-2000, 2000)-(2000, -2000)
End Sub

Private Sub Timer1_Timer()
    Me.Cls
    For i = 0 To 360 Step 30
        Me.DrawWidth = 5
        Me.PSet (Sin(PI / 180 * i) * 500, Cos(PI / 180 * i) * 600), vbGreen
    Next
    Me.DrawWidth = 1
    Me.Line (-2000, 0)-(2000, 0), vbBlack
    Me.Line (0, 2000)-(0, -2000), vbBlack
    Me.DrawWidth = 2
    '秒
    Me.Line (0, 0)-(Sin(PI / 180 * Second(Now) * 6) * 500, Cos(PI / 180 * Second(Now) * 6) * 500), vbRed
    '分
    Me.Line (0, 0)-(Sin(PI / 180 * Minute(Now) * 6) * 400, Cos(PI / 180 * Minute(Now) * 6) * 400), vbYellow
    '时
    Me.Line (0, 0)-(Sin(PI / 180 * Hour(Now) * 30) * 300, Cos(PI / 180 * Hour(Now) * 30) * 300), vbBlack
End Sub
搜索更多相关主题的帖子: 时钟 图形 代码 
2008-10-31 01:15
三断笛
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:31
帖 子:1621
专家分:1617
注 册:2007-5-24
收藏
得分:0 
ioriliao我问你一个简单的问题:如果Timer内的代码很多,在一个Interval内执行不完,那未执行完的那些代码咋办?
当然不是说你的代码有问题啊,只作讨论
2008-10-31 01:37
风吹过b
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:364
帖 子:4943
专家分:30067
注 册:2008-10-15
收藏
得分:0 
[bo][un]三断笛[/un] 在 2008-10-31 01:37 的发言:[/bo]

ioriliao我问你一个简单的问题:如果Timer内的代码很多,在一个Interval内执行不完,那未执行完的那些代码咋办?
当然不是说你的代码有问题啊,只作讨论


会继续执行,相关测试代码如下:

程序代码:
Option Explicit
Dim bo As Long

Private Sub Timer1_Timer()

Label3.Caption = bo

If bo = 0 Then
    bo = 1
    Call sub1
End If
If bo = 1 Then
    bo = 2
    Call sub2
End If
End Sub


Sub sub1()
Dim i As Long
Dim j As Long
    
    For i = 5000 To 10000
        Label1.Caption = i
        For j = 1 To 1000
            DoEvents
        Next j
        
    Next i

End Sub

Sub sub2()
Dim i As Long
Dim j As Long
    
    For i = -10000 To -5000
        Label2.Caption = i
        For j = 1 To 1000
            DoEvents
        Next j
        
    Next i

End Sub



[[it] 本帖最后由 风吹过b 于 2008-10-31 09:20 编辑 [/it]]

授人于鱼,不如授人于渔
早已停用QQ了
2008-10-31 09:16
风吹过b
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:贵宾
威 望:364
帖 子:4943
专家分:30067
注 册:2008-10-15
收藏
得分:0 
会发代码了。刚找了一下。

授人于鱼,不如授人于渔
早已停用QQ了
2008-10-31 09:21
ioriliao
Rank: 7Rank: 7Rank: 7
来 自:广东
等 级:贵宾
威 望:32
帖 子:2829
专家分:647
注 册:2006-11-30
收藏
得分:0 
呵呵...会等到代码执行完毕的.
那位老兄能将程序改成api的啊?

/images/2011/147787/2011051411021524.jpg" border="0" />
2008-10-31 10:11
ioriliao
Rank: 7Rank: 7Rank: 7
来 自:广东
等 级:贵宾
威 望:32
帖 子:2829
专家分:647
注 册:2006-11-30
收藏
得分:0 
不知道如何用api定义数学坐标系.

/images/2011/147787/2011051411021524.jpg" border="0" />
2008-10-31 10:11
Joforn
Rank: 6Rank: 6
等 级:贵宾
威 望:23
帖 子:1242
专家分:122
注 册:2007-1-2
收藏
得分:0 
Timer是接收窗体WM_TIMER消息来确定执行的,如果在Timer事件的处理过程返回前,一般窗体不再响应其它的事件,下一次的WM_TIMER一直在队列中等待,一旦处理过程完成,应该会再次激活。

VB QQ群:47715789
2008-10-31 11:32
sdhtli
Rank: 1
等 级:新手上路
帖 子:115
专家分:0
注 册:2008-10-6
收藏
得分:0 
好东西,学习了
2008-11-02 11:08
快速回复:几行代码就实现一个图形时钟程序
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.026388 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved