广告合作
  • 今日头条

    今日头条

  • 百度一下

    百度一下,你就知道

  • 新浪网

    新浪网 - 提供新闻线索,重大新闻爆料

  • 搜狐

    搜狐

  • 豆瓣

    豆瓣

  • 百度贴吧

    百度贴吧——全球领先的中文社区

  • 首页 尚未审核订阅工具 订阅

    VB设计动画时钟

    来源:网络收集  点击:  时间:2024-06-04
    【导读】:
    用Load命令建立原始Line控制的14个拷贝(因为表盘有12个点和时、分、秒共15个Line),该控制数组每一个实例的端点坐标属性设置为每条线在时钟表盘上的适当位置,这些拷贝中大多数只放置一次,而3个Line控制每秒钟更新一次,产生时钟指针移动的感觉。注意:在应用程序代码中并没有直接擦除任何一条线。当我们改变每一个Line控制的端点时,每一根针在移动时擦除和重画的所有技术工作都由VB来处理。方法/步骤1/7分步阅读

    如何修改时针的形状?

    通过调整代码中的属性设置,可以改变时钟的形状。例如:通过改变每一个Line控制的Borderwidth属性设置,可以建立更细或更粗的线。

    2/7

    计时器的Interval(间距)属性设置

    计时器的Interval属性设置为100,即为1/10秒。

    程序的编写与执行

    3/7

    新建工程

    先新建一个工程(工程类型为标准EXE),然后用“工具箱”中的工具加入一个Timer1(计时器)和line1(直线),其index(指针)分别设置为空和0。然后双击Form1窗体,输入源代码。

    4/7

    程序源代码

    Option Explicit

    DefDbl A-Z

    Private Sub Form_Load()

    timer1.Interval=100

    Width=4000

    Height=4000

    Left=Screen.Width\2-2000

    Top=(Screen.Height-Height)\2

    End Sub

    Private Sub Form_Resize()

    Dim I, Angle

    Static flag As Boolean

    If flag=False Then

    flag=True

    For I=O to 14

    画出表盘12个点和时、分、秒共15个LINE

    If I0 Then Load Line1(I)

    Line1(I).Visible=True

    Line1(I).BorderWidth = 5

    Line1(I).BorderColor = RGB(0, 128,0) 设置LINE的精细和颜色

    Next I

    5/7

    End If

    For I = 0 To 14

    Scale (-1, 1)-(1, -1)

    Angle = I * 2 * Atn(1) / 3

    Line1(I).X1 = 0.9 * Cos(Angle)

    Line1(I).Y1 = 0.9 * Sin(Angle)

    Line1(I).X2 = Cos(Angle)

    Line1(I).Y2 = Sin(Angle)

    Next I

    End Sub

    6/7

    Private Sub timer1_Timer()

    Const HH = 0

    Const MH = 13

    Const SH = 14

    Dim Angle

    Static LS

    If Second(Now) = LS Then Exit Sub

    LS = Second(Now)

    Angle = 0.5236 * (15 - (Hour(Now) + Minute(Now) /60)) 设置时针

    Line1(HH).X1 = 0

    Line1(HH).Y1 = 0

    Line1(HH).X2 = 0.3 * Cos(Angle)

    Line1(HH).Y2 = 0.3 * Sin(Angle)

    Angle = 0.1047 * (75 - (Minute(Now) + Second(Now) / 60)) 设置分针

    Line1(MH).X1 = 0

    Line1(MH).Y1 = 0

    Line1(MH).X2 = 0.7 * Cos(Angle)

    Line1(MH).Y2 = 0.7 * Sin(Angle)

    Angle = 0.5236 * (75 Second(Now)) 设置秒针

    Line1(SH).X1 = 0

    Line1(SH).Y1 = 0

    Line1(SH).X2 = 0.8 * Cos(Angle)

    Line1(SH).Y2 = 0.8 * Sin(Angle)

    form1.Caption = Str(Now()) 窗口显示精确的日期和数字化的时间

    End Sub

    7/7

    程序的编译和执行

    点击VB“运行”菜单中的“启动”或“全面编译”命令,即可对程序编译并运行!

    注:上述程序在中文Windows98和VB5.0中文企业版下调试通过

    本文关键词:

    版权声明:

    1、本文系转载,版权归原作者所有,旨在传递信息,不代表看本站的观点和立场。

    2、本站仅提供信息发布平台,不承担相关法律责任。

    3、若侵犯您的版权或隐私,请联系本站管理员删除。

    4、文章链接:http://www.1haoku.cn/art_878342.html

    相关资讯

    ©2019-2020 http://www.1haoku.cn/ 国ICP备20009186号05-05 02:50:46  耗时:0.027
    0.0274s