在VB应用软件中实现动画效果
2008-02-23 06:53:07来源:互联网 阅读 ()
---- 一、使用Animation控件
---- 在VB5.0中可以使用Animation控件实现动画,实例如下:
Private Sub Animation1_Click ()
With CommonDialog1
Filter = "avi (*.avi)|*.avi"
过滤器指定在对话框的文件列表框中显示文件的类型
.ShowOpen
显示“打开”对话框
End With
With Animation1
.Autoplay = True
---- 一旦将 .avi 文件加载到 Animation 控件中,则 .avi 文件 将连续循环的自动播放。
.Open CommonDialog1.Filename
---- 打开一个将要播放的 .avi 文件。如果 AutoPlay 属性为 True,则只要加载该文件便可。
End With
End Sub
---- Animation 控件不能播放含有声音数据的 .avi 文件。此外,动画控件只能显示未压缩的或用行程编码 (RLE) 压缩的 .avi 文件。当用文件调用 Open 方法时,如果该文件含有声音数据,或不具备特定的压缩格式,则返回错误。
---- 二、使用AniPushButton(AniButton)控件
---- 受Windows/NT超级终端动画效果的影响,笔者也希望在开发的应用软件中加入转动地球的效果。首先用PHOTOSHOP制作一些图画,地球的图像是用一个地球仪临摹取得的,每次将地球仪转动一个固定的角度,得到一幅不同角度地球的图像,重复多次,且将每一幅图存为一个.bmp文件,供AniPushButton调用。
---- AniPushButton控件包含了大量的属性、方法、事件供开发人员使用。首先在Picture和Frame属性中装入图像文件,Picture属性可以装入多幅图像文件,帧Frame属性是Picture属性装入图像文件的索引,Frame属性是1对应第一个图像文件,注意,Frame 只能从1开始,而图像数组可以从0开始,这两个属性可以在属性设计时设置,也可以在程序中设置,Picture属性可以装入.bmp、.ico、.wmf等文件,其他格式的图像文件可以用PHOTOSHOP或SEA等文件进行格式转换,在动画的图像文件装入时,不是装入一幅图像文件,而是要在Frame属性的控制下,装入多幅图像文件,Frame为1,Picture装入第一幅图像文件,Frame为2,Picture装入第二幅图像文件,依次类推,将可产生动画效果的各种图像依次装入Picture属性中。
---- PicDrawMode属性用于设置显示图像与装入图像之间的比例关系。0为控制按设计的大小装入图像,1为控制按图像的大小自动调整边框的大小,2为图像按控制的大小放大或缩小原图 Caption属性,为了不影响动画的效果,这里清空Caption属性。
---- Speed属性,表示动态切换每幅图的速度,以毫秒ms为单位,值越大,切换速度越慢。
---- SpecialOp属性,该属性在设计时无效,只有在程序运行时软件设置,为1时,表示模拟鼠标的Click操作,不由用户操作触发,而由系统自动触发动画按钮,使控制执行Click功能,在下面的软件中使用定时器来激活该功能。在下面的程序中,用到的一些参数值,包括Picture和Frame都是在程序中设置的,不是在属性对话框中设置的。
Private Sub Form_Load()
With timer1 设定时器属性
.Enabled = False
.Interval = 600
End With
With AniPushButton1 设AniPushButton1各属性
.Enabled = True 激活
.Cycle = 0
.Caption = ""
.PictDrawMode = 1 按图像的大小自动调整
.Speed = 200 帧切换速度
.Frame = 1 用LoadPicture方法给Picture属性赋值
.Picture = LoadPicture("c:\earth1.bmp ")
.Frame = 2
.Picture = LoadPicture("c:\earth2.bmp")
.Frame = 3
.Picture = LoadPicture("c:\earth3.bmp")
.Frame = 4
.Picture = LoadPicture("c:\earth4.bmp")
.Frame = 5
.Picture = LoadPicture("c:\earth5.bmp")
End With
End Sub
Sub Cmd_Start_Click () 开始命令按钮启动定时器
timer1.Enabled = -1
End Sub
Sub Timer1_Timer ()
AniButton1.SpecialOp = 1 实现鼠标的Click操作
End Sub
---- 三、使用PictureClip控件实现动画
---- 该控件提供了存储多个图像信息的技术,其访问方式不是向AniPushButton依次切换每幅图像,而是先将多幅图像依次有序存放在一个.bmp文件中,.bmp中的图像将被均匀分割成许多小块,每一块作为动画切换的一幅图。
---- 下面的程序将实现一个转动陀螺的动画效果。
---- 在程序的声明段定义变量:
Dim y As Integer
Dim toggle As Integer
Private Sub Form_Load()
picture1.Picture = PictureClip1.
GraphicCell(0) 使用第一幅为开始帧
y = 0
toggle=0
End Sub
Private Sub cmd_onoff_Click() 开关命令按钮
If toggle = 0 Then
cmd_onoff.Caption = "停止"
toggle = 1
Else
cmd_onoff.Caption = "旋转"
toggle = 0
End If
End Sub
Private Sub Timer1_Timer()
If toggle = 1 Then spin 满足条件,调图切换子程序
End Sub
Private Sub spin()
y = y 1: If y = 17 Then y = 0
picture1.Picture = PictureClip1.
GraphicCell(y) 图切换一帧
End Sub
---- 在上面的程序中,使用了命令按钮、图片控件、定时器和图像剪切控件等功能,其中最主要的是制作图像文件。图像文件制作分两个过程,首先制作单个的图像文件,然后,将这些图像文件合并成一个图像文件,存于一个.bmp文件中,在图像合成时可使用WINDOWS/95中的“画图”,用粘贴的方法完成。注意,在图像合成时,应设置状态栏参数以确定图像的精确位置,否则,在动画过程中,图像会出现跳动和不稳定感。
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
下一篇:用VB实现图像切换效果
- 在VB应用软件中实现动画效果 2018-06-17
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash