其中各个控件的作用如下所示:
n CommonDialog控件:在程序运行的过程中,通过调用CommonDialog控件的相应方法就可以显示一个打开文件的对话框,用户在其中可以选择一个待播放的以*.avi为后缀的动画文件;
n Slider1控件:在程序运行的过程中,用户可以通过滑动这个控件的滑动块来调节动画播放的音量;
n Slider2控件:在程序运行的过程中,用户可以通过滑动这个控件的滑动块来调节动画播放的速度;
n Slider1控件:在程序运行的过程中,用户可以通过滑动这个控件的滑动块来调节动画播放的缩放比例;
n MCIWnd控件:显示动画文件的容器。
在本示例程序中,所谓程序初始化,指的就是为窗体Private Sub Form_Load()事件所添加的响应代码。在程序设计的过程中,用鼠标左键双击窗体上的空白处,在屏幕上就会弹出一个空白的代码窗口,在代码窗口的对象列表中选择窗体Form,在对应的事件列表中选择事件Private Sub Form_Load(),把光标移动到事件的处理过程中,并且添加如下所示的事件响应代码:
Private Sub Form_Load()
Form1.CommonDialog1.DialogTitle = "请选择一个有效的动画文件:"
'设置对话框标题
Form1.CommonDialog1.Filter = "动画文件(*.avi)|*.avi"
'设置文件过滤器
Form1.CommonDialog1.InitDir = "c:\windows"
'设置缺省工作路径
Form1.Command1.Enabled = True
'设置按钮控件的有效状态
Form1.Slider1.Enabled = False
Form1.Slider2.Enabled = False
Form1.Slider3.Enabled = False
'设置滚动条控件的有效状态
End Sub
在程序运行初期,事件Private Sub Form_Load()中的代码会被执行,程序通过三条语句:
Form1.CommonDialog1.DialogTitle = "请选择一个有效的动画文件:"
Form1.CommonDia-log1.Filter = "动画文件(*.avi)|*.avi"
Form1.CommonDialog1.InitDir = "c:\windows"
分别设置了对话框标题、文件过滤器和缺省的工作路径,然后设置了窗体上按钮控件Command1和三个滚动条控件的有效状态。
经过程序初始化后,由CommonDialog1控件所打开的对话框如图6-31所示。
图6-31 程序初始化后的对话框
在程序设计的过程中,用鼠标左键双击窗体上的空白处,在屏幕上就会弹出一个空白的代码窗口,在代码窗口的对象列表中选择控件Slider1、Slider2和Slider3,在对应的事件列表中分别选择Private Sub Slider1_Scroll()事件、Private Sub Slider2_Scroll()事件和Private Sub Slider3_Scroll()事件,把光标移动到事件的处理过程中,并且添加如下所示的事件响应代码:
Private Sub Slider1_Scroll()
Form1.MCIWnd1.Volume = Form1.Slider1.Value * 100
'改变动画播放中的音量
End Sub
Private Sub Slider2_Scroll()
Form1.MCIWnd1.Speed = Form1.Slider2.Value * 100
'改变动画播放中的速度
End Sub
Private Sub Slider3_Scroll()
Form1.MCIWnd1.Zoom = Form1.Slider3.Value * 100
'改变动画播放中的缩放比
End Sub
在程序运行的过程中,用户选择了一个有效的动画文件,窗体上的三个滚动条控件Slider1、Slider2和Slider3就会变为有效的状态,如果用户利用鼠标拖动滚动条控件上的滑动条,就会激活控件的Private Sub Slider1_Scroll()事件、Private Sub Slider2_Scroll()事件和Private Sub Slider3_Scroll()事件,然后分别执行相应的Form1.MCIWnd1.Volume = Form1.Slider1.Value * 100、Form1.MCIWnd1.Speed = Form1.Slider2.Value * 100和Form1.MCIWnd1.Zoom = Form1.Slider3.Value * 100语句来改变动画播放中的音量、播放速度和文件显示的缩放比。
按照附后的源程序清单添加剩余的代码,设置项目的启动窗体为主窗体Form1,存储文件,运行程序,程序运行结果如图6-32所示。

图6-32 程序运行结果
附程序完整源代码如下所示:
程序清单
VERSION 6.00
Object = "{288F1520-FAC4-11CE-B16F-00AA0060D93D}#1.0#0"; "MCIWNDX.OCX"
Object = "{831FDD16-0C5C-11D2-A9FC-0000F8754DA1}#2.0#0"; "MSCOMCTL.OCX"
Object = "{F9043C88-F6F2-101A-A3C9-08002B2F49FB}#1.2#0"; "COMDLG32.OCX"
Begin Visual Basic.Form Form1
BorderStyle = 3
Caption = "动画播放程序"
Moveable = 0
ScaleHeight = 4335
ScaleWidth = 6915
ShowInTaskbar = 0
StartUpPosition = 2
Begin Visual Basic.CommandButton Command1
Caption = "打开文件"
End
Begin Visual Basic.Label Label3
Caption = "缩放调节:"
End
Begin Visual Basic.Label Label2
Caption = "速度调节:"
End
Begin Visual Basic.Label Label1
Caption = "音量调节:"
End
Begin MSComDlg.CommonDialog CommonDialog1
Left = 6000
Top = 3480
End
Begin MCIWndX.MCIWnd MCIWnd1
Height = 2895
Left = 1320
Top = 480
Width = 4215
End
Begin MSComctlLib.Slider Slider1
Left = 5880
Top = 1320
Orientation = 1
End
Begin MSComctlLib.Slider Slider2
Left = 360
Top = 1440
Orientation = 1
End
Begin MSComctlLib.Slider Slider3
Left = 4560
Top = 3720
End
End
Attribute Visual Basic_Name = "Form1"
Attribute Visual Basic_GlobalNameSpace = False
Attribute Visual Basic_Creatable = False
Attribute Visual Basic_PredeclaredId = True
Attribute Visual Basic_Exposed = False
Private Sub Command1_Click()
Form1.CommonDialog1.ShowOpen
'显示一个对话框
If Form1.CommonDialog1.FileName <> "" Then
Form1.MCIWnd1.FileName = Form1.CommonDialog1.FileName
'设置播放的动画文件
Form1.Caption = DialogCaption + Form1.CommonDialog1.FileName
'显示播放文件的路径和文件名
Form1.Slider1.Enabled = True
Form1.Slider2.Enabled = True
Form1.Slider3.Enabled = True
'设置滚动条控件的有效状态
Else
Exit Sub
End If
End Sub
Private Sub Form_Load()
Form1.CommonDialog1.DialogTitle = "请选择一个有效的动画文件:"
'设置对话框标题
Form1.CommonDialog1.Filter = "动画文件(*.avi)|*.avi"
'设置文件过滤器
Form1.CommonDialog1.InitDir = "c:\windows"
'设置缺省工作路径
Form1.Command1.Enabled = True
'设置按钮控件的有效状态
Form1.Slider1.Enabled = False
Form1.Slider2.Enabled = False
Form1.Slider3.Enabled = False
'设置滚动条控件的有效状态
End Sub
Private Sub Slider1_Scroll()
Form1.MCIWnd1.Volume = Form1.Slider1.Value * 100
'改变动画播放中的音量
End Sub
Private Sub Slider2_Scroll()
Form1.MCIWnd1.Speed = Form1.Slider2.Value * 100
'改变动画播放中的速度
End Sub
Private Sub Slider3_Scroll()
Form1.MCIWnd1.Zoom = Form1.Slider3.Value * 100
'改变动画播放中的缩放比
End Sub
图文并茂、生动活泼是多媒体程序的特点之一,在当今计算机领域中,多媒体技术已经成为计算机领域中发展最为迅速的领域之一,在应用程序中适当的插入一些动画,会使应用程序变得生动、活泼,所以多媒体应用程序设计中动画程序设计是很重要的一部分内容。
在本章中,通过几个示例程序向读者介绍Visual Basic 6.0中动画应用程序设计得一般方法和常用技巧,其中包括动画程序制作,动画播放器的制作等方面,希望读者能够在理解的基础上能够编制出自己的多媒体应用程序。