1、优质广告传媒利用VB实现多媒体播放器(广告传媒)利用VB实现多媒体播放器(注意不要全抄下来,以各自理解的写,如何出现一样的报告,将给予0分处理)六、实验讲义实验1API_音频播放器本节主要介绍了利用API函数制作WAV音频播放器,首先来介绍一下PlaySound()函数。它的声明形式如下所示:PrivateDeclareFunctionPlaySoundLibAliasPlaySoundA(ByVallpszNameAsString,ByValhModuleAsInteger,ByValdwFlagsAsInteger)AsInteger字符串lpszName为声音文件的全名。长整型hModu
2、le为程序模块的句柄,通常设置为0。长整型dwFlags标志设置,在使用文件名时设置为&20000。添加控件新建一个项目,在项目里添加windows窗体“form1”,把它的“Text”属性改为“API_音频播放”。在“form1”上添加一个DriveListBox控件做为驱动器列表框,一个DirListBox控件做为目录列表框,一个FileListBox控件做为文件列表框,一个Button控件做为命令按钮,五个Label控件做为标识。把Label1的Text属性改成“驱动器”来标识DriveListBox控件,把Label2的Text属性改成“目录”来标识DirListBox控件,把Labe
3、l3的Text属性改成“文件”来标识FileListBox控件,再把FileListBox控件的Pattern属性设置为*.WAV,这样就能过滤掉其他类型的文件,Label4的Text属性改成“所选的声音文件全名”,Label5的Text属性显示声音文件的完全路径。把Button的Text属性改成“播放”。参见图1图1添加代码双击DriveListBox1控件后进入代码编辑窗口,首先添加如下所示的程序声明代码:OptionStrictOffOptionExplicitOnFriendClassForm1Inherits.播放声音的API函数PrivateDeclareFunctionPlayS
4、oundLibAliasPlaySoundA(ByVallpszNameAsString,ByValhModuleAsInteger,ByValdwFlagsAsInteger)AsIntegerDimstrSoundAsString函数声明在“PrivateSubDriveListBox1_SelectedIndexChanged(ByValsenderAs,ByValeAs)HandlesDriveListBox1.SelectedIndexChanged”与“EndSub”之间添加代码:驱动器改变DirListBox1.Path=DriveListBox1.Drive双击DirListB
5、ox1控件,添加代码:目录改变FileListBox1.Path=DirListBox1.Path双击FileListBox1控件,添加代码:文件改变strSound=DirListBox1.Path&FileListBox1.FileName双击Label5控件,添加代码:strSound=DirListBox1.Path+FileListBox1.FileNameLabel5.Text=strSound双击Button1控件,添加代码:播放音频文件DimlngRetAsIntegerIfstrSound=Then不选择声音文件直接播放lngRet=PlaySound(c:WindowsMe
6、diaTheMicrosoftSound,0,&H20000)Else选择声音文件后播放lngRet=PlaySound(strSound,0,&H20000)EndIf在“PrivateSubForm1_Load(ByValsenderAs,ByValeAs)HandlesMyBase.Load”与“EndSub”之间添加代码:为文件名赋初值strSound=3.运行完成所有的代码书写后,保存文件并运行程序。运行后的程序大致如图2所示,图2各个框框里的内容也许因人而异,但结构差不多相同,如果不选择文件,直接单击“播放”,则播放的我们所熟悉的Windows98启动的声音。当然你也可以选择自己喜
7、欢的音乐文件进行播放,但是文件名必须是*.WAV。实验2MP3播放器1.添加控件新建一个Windows应用程序,把Form1的“Text”属性改为“MP3Player”。添加一个MainMenu控件,选中控件MainMenu1,点击鼠标右键,在弹出的菜单里选择“编辑菜单”进入菜单编辑窗口,如图:选中MenuItem1,点击鼠标右键,选择“新插入”,共插入4个MenuItem,它的属性如下表:控件类别控件名称属性设置结果MainMenuMenuItem1Text文件MenuItem2Text打开文件MenuItem3Text清除列表MenuItem4Text退出添加一个ListBox控件,把Na
8、me属性改为“List”,用于显示曲目列表。添加3个Button控件,它们的属性如下表:控件类别控件名称属性设置结果ButtonButton1Text播放Button2Text暂停Button3Text停止添加一个OpenFileDialog控件,用于显示打开对话框。添加一个MMControl控件,把Visible属性设置为“False”,这样就把MMControl控件隐藏了。MMControl控件通常不在“工具栏”里,可以通过点击菜单栏上的“工具”“添加/移除工具箱项”,在COM组件里找到“MicrosoftMultimediaControl”项,选中然后确定即可。如图:添加控件完毕后的界面
9、如图:添加代码双击“打开文件”菜单,添加如下代码:DimpathNames()AsString定义多选文件路径DimsFileAsString定义选取的文件路径DimflagAsBoolean=False判断用户双击的区域是否在列表项上PrivateSubMenuItem2_Click(ByValsenderAs,ByValeAs)HandlesMenuItem2.ClickWithMe.OpenFileDialog1.Title=打开音乐文件.Multiselect=True.Filter=音乐文件(*.mp3)|*.mp3|(*.mid)|*.mid.ShowDialog()pathNam
10、es=.FileNamesEndWithDimpathAsStringForEachpathInpathNamesMe.Add(path)Next添加文件路径到播放列表中EndSub双击“清除列表”菜单,添加如下代码:PrivateSubMenuItem3_Click(ByValsenderAs,ByValeAs)HandlesMenuItem3.ClickMe.Clear()EndSub双击“退出”菜单,添加如下代码:PrivateSubMenuItem4_Click(ByValsenderAs,ByValeAs)HandlesMenuItem4.ClickMe.=StopMe.=Close
11、Me.Close()EndSub双击ListBox控件,在代码编辑窗口的右上的下拉菜单中,选择“DoubleClick”,如图:添加如下代码:PrivateSubList_DoubleClick(ByValsenderAsObject,ByValeAs)Handlesflag=Trueflag=TrueOnErrorResumeNextMe.=StopMe.=ClosesFile=Me.Me.=sFileMe.=OpenMe.=PlayEndSub双击“播放”按钮,添加如下代码:PrivateSubButton1_Click(ByValsenderAs,ByValeAs)HandlesButt
12、on1.ClickMe.=PlayEndSub双击“暂停”按钮,添加如下代码:PrivateSubButton2_Click(ByValsenderAs,ByValeAs)HandlesButton2.ClickMe.=PauseEndSub双击“停止”按钮,添加如下代码:PrivateSubButton3_Click(ByValsenderAs,ByValeAs)HandlesButton3.ClickMe.=StopMe.=PrevMe.=StopEndSub运行完成代码后,保存文件,并按F5调试运行,打开音乐文件(*.mp3),可以同时打开多个文件,在列表框将出现所选择的文件列表,双击任
13、意一首歌曲,就能进行播放,运行结果如图所示:实验3CD播放器1.添加控件新建一个Windows应用程序,把Form1的“Text”属性改为“CDPlayer”。添加一个MainMenu控件,选中控件MainMenu1,点击鼠标右键,在弹出的菜单里选择“编辑菜单”进入菜单编辑窗口,如图:选中MenuItem1,点击鼠标右键,选择“新插入”,共插入4个MenuItem,它的属性如下表:控件类别控件名称属性设置结果MainMenuMenuItem1Text唱片MenuItem2Text载入MenuItem3Text弹出MenuItem4Text退出添加一个ListBox控件,把Name属性改为“Tr
14、acks”。添加一个StatusBar控件,把ShowPanels属性设为“True”,再添加两个StatusBarPanel,并讲它们的Alignment属性都改为“Center”,AutoSize属性都改为“Spring”。添加一个Timer控件,把Interval属性设为“1000”,Enable属性设为“True”。添加一个MMControl控件,把Name属性改为“MCIControl”,所有按钮的Enable属性都设为“True”。可通过如下的方法设置按钮的属性:选中Form1上的MMControl控件,点击鼠标右键,在弹出的菜单里选择“ActiveX属性”,点击“控件”选项,然后
15、把所有控件的“*有效”选项都选中如图:如果你在“工具栏”里找不到MMControl控件,可以通过点击菜单栏上的“工具”“添加/移除工具箱项”,在COM组件里找到“MicrosoftMultimediaControl”项,选中然后确定即可。如图:添加控件完毕后的界面如图:添加代码双击ListBox控件,添加如下代码:PrivateSubTracks_SelectedIndexChanged(ByValsenderAs,ByValeAs)Handlesflag=TrueEndSub在代码编辑窗口的右上下拉菜单中,选择DoubleClick,如图:然后添加如下代码:PrivateSubTracks_
16、DoubleClick(ByValsenderAsObject,ByValeAs)Handles实现双机更改曲目功能TryIfMe.=0Andflag=TrueThenflag=FalseMe.=StopMe.=Me.+1Me.=Me.Me.=PlayEndIfCatchexAsExceptionEndTryEndSub双击“载入”控件,添加如下代码:PrivateSubMenuItem2_Click(ByValsenderAs,ByValeAs)HandlesMenuItem2.ClickDimiAsIntegerTryMe.=Open选取豪秒作为时间单位Me.=0Me.=1从第1首的开始位
17、置起播放Me.=Me.IfThen(CDERROR)ExitSubEndIfMe.=True将所有曲目列于表中Fori=1To.Add(track&i)NextIf.Count0ThenMe.=0Else(CDERROR)ExitSubEndIfCatchexAsException(CDERROR)ExitSubEndTryTimer1.Enabled=TrueMe.=PlayEndSub双击“弹出”控件,添加如下代码:PrivateSubMenuItem3_Click(ByValsenderAs,ByValeAs)HandlesMenuItem3.ClickMe.=EjectEndSub双击
18、“退出”控件,添加如下代码:PrivateSubMenuItem4_Click(ByValsenderAs,ByValeAs)HandlesMenuItem4.ClickMe.Close()EndSub双击MMControl控件,选择“StatusUpdate”添加如下代码:PrivateSubMCIControl_StatusUpdate(ByValsenderAsObject,ByValeAs)HandlesIfMe.=526ThenTimer1.Enabled=TrueElseTimer1.Enabled=FalseEndIfEndSub双击Timer控件,添加如下代码:PrivateS
19、ubTimer1_Tick(ByValsenderAs,ByValeAs)HandlesTimer1.Tick更新状态栏Me.StatusBarPanel1.Text=CD共有曲目&Me.&首Me.StatusBarPanel2.Text=现在正在播放第&Me.&首EndSub双击Form窗体,进入代码编辑界面,添加如下代码:判断用户双击的区域是否在列表项上DimflagAsBoolean=FalsePrivateSubForm1_Load(ByValsenderAs,ByValeAs)HandlesMyBase.LoadMe.FormBorderStyle=.FixedSingleMe.Ma
20、ximizeBox=False=False=False设置设备类型=CDAudioMe.StatusBarPanel1.Text=等待Me.StatusBarPanel2.Text=请放入CD并加载EndSub然后在代码编辑窗口的右上下拉菜单中,选择“Closing”,添加如下代码:PrivateSubForm1_Closing(ByValsenderAsObject,ByValeAs.CancelEventArgs)HandlesMyBase.Closing=Stop=CloseEndSub运行完成代码后,保存文件,并按F5调试运行,放入一张CD到CDROM中,运行的结果如图:实验4视频播放
21、器在这一例中,我们将利用MCI控件制作一个播放视频文件的程序,程序具备以下功能:具有播放视频文件的能力。选择并打开将播放的文件。播放文件,具备Play(播放)、Stop(停止)等常见的播放功能。有进度条指示目前的播放进度。具备被循环播放功能。具备静音功能。1.添加控件新建一个Windows应用程序,把Form1的“Text”属性改为“MediaPlayer”。添加一个MainMenu控件,选中控件MainMenu1,点击鼠标右键,在弹出的菜单里选择“编辑菜单”进入菜单编辑窗口,如图:选中MenuItem1,点击鼠标右键,选择“新插入”,共插入3个MenuItem,它的属性如下表:控件类别控件名
22、称属性设置结果MainMenuMenuItem1Text文件MenuItem2Text打开MenuItem3Text退出添加一个PictureBox控件,把Name属性改为“Picture1”,用于显示播放的画面。添加一个MMControl控件,用于实现播放的各种功能。把Name属性改为“MCIControl”,所有按钮的Enable属性都设为“True”。可通过如下的方法设置按钮的属性:选中Form1上的MMControl控件,点击鼠标右键,在弹出的菜单里选择“ActiveX属性”,点击“控件”选项,然后把需要用到的控件设置为“可视”,其它设置为“隐藏”,如图所示:添加一个TrackBar控
23、件,用于控制和指示播放的进度。添加一个CheckBox控件,Name属性为“CheckBox1”,把Text属性改为“静音”,用于实现静音功能。添加一个CheckBox控件,Name属性为“CheckBox2”,把Text属性改为“循环”,用于实现循环播放的功能。添加一个OpenFileDialog控件,用于显示打开对话框。MMControl控件通常不在“工具栏”里,可以通过点击菜单栏上的“工具”“添加/移除工具箱项”,在COM组件里找到“MicrosoftMultimediaControl”项,选中然后确定即可。如图:添加控件完毕后的界面如图:添加代码双击“打开”菜单,添加如下代码:DimF
24、ileNameAsStringPrivateSubMenuItem2_Click(ByValsenderAs,ByValeAs)HandlesMenuItem2.ClickWithMe.OpenFileDialog1.Title=打开视频文件.Filter=视频文件(*.avi)|*.avi|(*.mpg)|*.mpg|(*.mpeg)|*.mpeg.ShowDialog()FileName=.FileNameEndWithIfFileNameThenMe.=TrueMe.=FileNameMe.=Me.Picture1.Me.=OpenMe.TrackBar1.Minimum=0Me.Tra
25、ckBar1.Maximum=Me.ElseMsgBox(请选择文件)EndIfEndSub双击“退出”菜单,添加如下代码:PrivateSubMenuItem3_Click(ByValsenderAs,ByValeAs)HandlesMenuItem3.ClickMe.=StopMe.=CloseMe.Close()EndSub双击MMControl控件,在代码编辑窗口的右上的下拉菜单中,选择“StatusUpdate”,如图:添加如下代码PrivateSubMCIControl_StatusUpdate(ByValsenderAsObject,ByValeAs)HandlesIfMe.Ch
26、eckBox1.CheckedThen如果复选了静音框Me.=True无声播放ElseMe.=False正常播放EndIfMe.TrackBar1.Value=Me.EndSub在代码编辑窗口的右上的下拉菜单中,选择“Done”,添加如下代码:PrivateSubMCIControl_Done(ByValsenderAsObject,ByValeAs_DoneEvent)HandlesIfMe.=Me.Then如果到了文件末尾Me.=prevMe.=Stop返回文件头IfMe.CheckBox2.CheckedThenMe.=play如果复选了“循环”框,开始重新播放EndIfEndIfEnd
27、Sub在代码编辑窗口的右上的下拉菜单中,选择“StopClick”,添加如下代码:PrivateSubMCIControl_StopClick(ByValsenderAsObject,ByValeAs_StopClickEvent)HandlesMe.=StopMe.=PrevMe.=StopEndSubEndClass双击TrackBar控件,添加如下代码:PrivateSubTrackBar1_Scroll(ByValsenderAs,ByValeAs)HandlesTrackBar1.ScrollIfMe.=TrueThenMe.=Me.TrackBar1.Value响应进度条的拖动En
28、dIfEndSub运行完成代码后,保存文件,并按F5调试运行,打开一个视频文件(*.avi,*.mpg,*.mpeg),在“文件类型”的下拉菜单中,可以选择不同的文件类型,运行的结果如图:实验5Flash动画播放器本例介绍如何使用ShockWaveFlash控件来制作Flash动画播放器的。首先将ShockWaveFlash控件的命令、属性、和事件简单介绍如下Play:播放。Stop:停止播放。StopPlay:停止播放当前的播放文件,以能播放新的动画。Movie属性:设置播放的文件路径。Loop属性:设置该属性为Ture,表示循环播放。CurrentFrame属性:当前帧。TotalFram
29、es属性:动画总的帧数。1.添加控件新建一个Windows应用程序,把Form1的“Text”属性改为“FlashPlayer”。在Form1上添加一个GroupBox控件,将它的Dock属性设置为“Bottom”。添加一个MainMenu控件,选中控件MainMenu1,点击鼠标右键,在弹出的菜单里选择“编辑菜单”进入菜单编辑窗口,如图:点击鼠标右键,选择“新插入”,共插入9个MenuItem,它的属性如下表控件类别控件名称属性设置结果MainMenuMenuItem1Text文件MenuItem2Text打开文件MenuItem3Text播放列表MenuItem4Text-MenuItem5Text退出程序MenuItem6Text控制MenuItem7Text继续播放MenuItem8Text暂停播放MenuItem9Text添加一个OpenFileDialog控件。添加一个Timer控件,把Interval属性改为“100”。添加一个TrackBar控件。添加一个Label控件,把Text属性改为“播放状态显示”。添加一个AxShockwaveFlash控件,把Dock属性改为“Fill”,把BackgroundCol
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1