VB设计动画时钟

 时间:2024-09-22 22:36:08

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

VB设计动画时钟

方法/步骤

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

VB设计动画时钟

2、计时器的Interval(间距)属性设置计时器的Interval属性设置为100,即为1/10秒。程序的编写与执行

VB设计动画时钟

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

VB设计动画时钟

4、程序源代码OptionExplicitDefDblA-ZPrivateSubFo筠续师诈rm_Load()timer1.Interva造婷用痃l=100Width=4000Height=4000Left=Screen.Width\2-2000Top=(Screen.Height-Height)\2EndSubPrivateSubForm_Resize()DimI,AngleStaticflagAsBooleanIfflag=FalseThenflag=TrueForI=Oto14'画出表盘12个点和时、分、秒共15个LINEIfI>0ThenLoadLine1(I)Line1(I).Visible=TrueLine1(I).BorderWidth=5Line1(I).BorderColor=RGB(0,128,0)'设置LINE的精细和颜色NextI

VB设计动画时钟

5、EndIfForI=0To14Scale(-1,1)-(1,-1)Angle=I*2*Atn(1)/3Line1(I).X1=0.9*Cos(Angle)Line1(I).Y1=0.9*Sin(Angle)Line1(I).X2=Cos(Angle)Line1(I).Y2=Sin(Angle)NextIEndSub

VB设计动画时钟

6、PrivateSubtimer1_Timer()ConstH郡哏匙芥H=0ConstMH=13ConstSH=14DimAngle胨检馁秣StaticLSIfSecond(Now)=LSThenExitSubLS=Second(Now)Angle=0.5236*(15-(Hour(Now)+Minute(Now)/60))'设置时针Line1(HH).X1=0Line1(HH).Y1=0Line1(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=0Line1(MH).Y1=0Line1(MH).X2=0.7*Cos(Angle)Line1(MH).Y2=0.7*Sin(Angle)Angle=0.5236*(75Second(Now))'设置秒针Line1(SH).X1=0Line1(SH).Y1=0Line1(SH).X2=0.8*Cos(Angle)Line1(SH).Y2=0.8*Sin(Angle)form1.Caption=Str(Now())'窗口显示精确的日期和数字化的时间EndSub

VB设计动画时钟

7、程序的编译和执行点击VB“运行”菜单中的“启动”或“全面编译”命令,即可对程序编译并运行!注:上述程序在中文Windows98和VB5.0中文企业版下调试通过

VB设计动画时钟

linux如何编译cpp文件 VB如何在非控件数组中求得最大值 C语言如何输出当前文件名 如何将数组从上向下翻转? labview中字符串的一种用法
热门搜索
哈弗suv报价及图片 想你了图片 植物大战僵尸的图片 eva同人漫画 虫洞图片