admin 管理员组文章数量: 1086019
2024年3月10日发(作者:web前端开发html模板)
维普资讯
70
第25卷第6期
凯里学院学报
Journal of Kaili University
Vol|25 NO.6
Dec.2007
2007年J 2月
基于VB时钟控件的动画制作方法
肖 荣
(凯里学院数学与计算机科学系,贵州凯里556000)
[摘 要]vB作为一种易学易用的可视化编程工具.提供了丰富的图形处理功能,在动画设计方面有其独到的一面
本文就基于VB时钟控件(Timer)的动画制作方法件(Timer)作一介绍.
[关键词]VB;时钟控件;动画
[中图分类号]TP314 [文献标识码]A[文章编号]1673—9329(2007)06—0070—02
VB作为一种易学易用的可视化编程工具.在动画设
计方面有其独到的~面、时钟(Timer)控件是VB中一个非
常重要的控件.它能有规律地以一定的时间间隔激发计时
器事件(Timer).而执行相应的程序代码.灵活运用VB时
钟控件,结合VB提供的图形处理功能和其它控件,能产生
非常丰富的动画效果.
1 闪烁动画效果
For r 10 I'o 65 Step 3
Circle(z, ),r.QBColor(Int(5*Rnd+10))
z=:z+8
y—y~l
Next r
End Sub
闪烁的文字和图形可以在屏幕上起到明显的提示作
用.通过使用VB的 I'imer控件,可以轻松实现闪烁字幕以
及闪烁图形的动画效果.
1|1 三维闪烁字幕
2 滚动动画效果
网页中的多帧图象滚动和字幕滚动.为我们浏览网页
带来了方便.VB同样能制作出这样的动画效果.
2.1 字幕滚动
设置一个lable对象.一Timer对象.且Interval一30,
通过在Timer事件过程中.处理lable对象的位置移动,实
现字幕的滚动.主要程序如下:
Private Sub Timerl
Timer()
—
设置一Timer对象,通过在Timer事件过程中,用循环
输出多层次、位置和颜色不同的文字,每400 ms触发一次
(即Interval=400),从而产生三维文字闪烁效果.主要程序
如下:
Private Sub Fimerl
Timer()
—
Dim mleft
Label1.Caption “欢迎使用VB6.0”
Label1.Move Label1.Left~2O
If Label1.Left<一~5 000 Then
mleft 800
Din1 i
Cls
For J=l To 8
Current X一600+
(:urrent Y:600+
6*i
10*i
Label1.Left—mleft
End If
End Sub
ForeColor:QBColor(Int(5
Print“VB程序设计”
Next i
2.2 多帧图像滚动
设置一个Image对象数组.一Timer对象,且Interval
一
Erl(1 Sub
20.通过在Timer事件过程中。同时处理Image对象数组
Image对象时.停止滚动,再单击又继续滚动.主要程序
1.2 闪烁螺旋环
一
中图像的位置移动.就能实现多帧图像的滚动.当单击任意
如下:
Dim i%, As Boolean
Private Sub Form
Load()
_
在上述程序的 I'imer事件过程中,当用循环输出的是
一
组圆心位置、半径和颜色都发生变化的圆时,产生的就是
闪烁螺旋环效果.主要程序如下:
Prixrate Sub Timer1Timer()
一
Scale(0,200)一(300,O)
Dim X ,Y .r
z一35
Y=11O
For l TO 3
Load Image1(i)
Imagel( ).Left
Width
Imagel(i—1).Left+Image1(i—1).
DrawWidth:】.5
[收稿日期]2007—05—3t
[作者简介]肖 荣(1962一),女,贵州凯里人,凯里学院数学与计算机科学系副教授
维普资讯
第6期
t一 l rue
肖 荣:基于VB时钟控件的动画制作方法
PSet(X,Y)。QBColor(0)
7l
Next
PSet(m(j,0)。m(j,1)),RGB(女,k,女)
Next J
Next
Imagel(O)一LoadPicture(App.Path+”\m(O).jPg”)
Imagel(1)一LoadPicture(App.Path+”\m(1).jPg”)
Image1(2)=LoadPicture(App.Path+”\m(2).jpg”)
Imagel(3)一LoadPicture(App.Path+”\m(3).jPg”)
End Sub
Private Sub Timer1
Timer()
一
End Sub
4.1 缩放图像
设置一个Image对象,一个Timer对象,且Interval=
200,通过在Timer事件过程中.改变Image对象的Width
For 一0 To 3
Imagel( ).Move Imagel( ).Left一30
Next
If Image1(1).Left<一一3 000 Then
X一300
For 一0 To 3
Imagel( ).Left—X+Imagel( ).Width*i
Next i
End If
End Sub
Private Sub Imagel—Click(Index As Integer)
If t Then
Timer1.Enabled—t
t False
Else
Timer1.Enabled—t
t—True
End If
End Sub
3 动画景象效果
满天飘飘的大雪.是人们最难忘的景色.VB也能在屏
幕上为我们制作出这样的情景.它的方法是设置一Timer
对象,且interval—l,通过在Timer事件过程中。首先在底
为黑色的窗体上随机画出许多白点(雪花),然后使这些雪
花不断地向下移动,反复循环,就成功地模拟了下雪的景
象,主要程序如下.
Dim D.I!(450,2), ,i
Private Sub Form_Load()
Randomize
n一450
For/一l To
m( ,O):Rnd*Form1.Width
m(i,1)一Rnd*Form1.Height
m( ,2):10+(Rnd*20)
Next
End Sub
Private Sub Timer1
一
Timer()
Dim %,k
For —l To 15
For —l To
X—m( ,O)
Y一 £( ,1)
m(j.1)一m(j,1)+m(j,2)
If m(j,1)>Form1.Height Then
m( ,1)一0
m( ,2)一5+(Rnd*3O).
End If
DrawWidth一2
k=50+8*( ( ,2)一10)
和Height属性。实现图像缩放.主要程序如下:
Option Explicit
Dim W,H
Dim X%,Y
Private Sub Form Load()
W—Image1.Width
H—Image1.Height
X—l00
Y—l00
End Sub
Private Sub Timerl
—
Timer()
Image1.Move Image1.Left—X/2,Image1.Top—Y/
2,一
Image1.Width+X,Image1.Height+Y
If Image1.Left+Image1.Width>一Form1.Widtn Or—
Image1.Top+Image1.Height>一Form1.Height Or
—
Image1.Left<=0 Or Image1.Top<=0 Then
x一一x
Y一——Y
End If
If Image1.Width<一W Or Image1.Height<一H Then
x一一x
Y一——Y
End If
End Sub
4.2 缩放文字
设置一个lable对象,一个Timer对象.Interval一300,
通过在Timer事件过程中,处理lable对象中字号的大小,
就可实现文字的缩放.程序如下:
Private Sub Timerl—Timer()
If Label1.FontSize<一45 Then
I abel1.FontSize—Label1.FontSize+5
Else
Label1.FontSize一15
End If
End Sub
如果要停止以上的各类动画效果,只需设置Timer1.
Enabled—False.以上程序都已经过VB6.0调试运行通
过.
参考文献:
[1]龚沛曾等.Visual Basic程序设计简明教程[M].北京;高等教
育出版社,2001.
[23苏瑞等.Visual Basic开发实用编程200例[M].二f匕京:中国铁
道出版,2006.
[3]伍俊良.Visual Basic课程设计与系统开发案例[M].北京;清
华大学出版社,2002.
[责任编辑:盂立霞]
版权声明:本文标题:基于VB时钟控件的动画制作方法 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.roclinux.cn/b/1710028657a554351.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论