微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

vb制作MP3播放器

在本实例中,我们将制作一个MP3播放器。程序运行时,可以选择MP3文件,选择左右声道声音,总共播放所需的时间等。程序运行结果如图所示。



技术要点


l 注册 Mp3Play 控件
l 获得 MP3 文件的播放总时间
l 设置左右声道的声音
l 获得 MP3 文件的总帧数

实现过程



新建项目


打开 VisualStudio.NET ,选择“新建项目”,在项目类型窗口中选择“ Visual Basic 项目”,在模板窗口中选择“ Windows 应用程序”,在名称域中输入“ Mp3Play ”,然后选择保存路径。单击“确认”。

添加控件


向当前窗体添加七个 Label 控件,其中四个作为说明之用,其余三个分别用于显示 MP3 文件的播放时间、总帧数和文件名称。鼠标右击工具箱,选择“自定义工具箱”,在弹出的对话框中选择 Com 组件,选中“ MicrosoftCommon Dialog Control6.0 、“ Microsoft Common Controls 6.0 、单击“浏览”,选中文件 Mp3play.ocx ,这时会在 “” 选项卡中出现“ Dialog-Media Mp3Play ActiveXControl Module ”一项。添加一个 CommonDialog 控件、三个 Slider 控件和一个 Mp3PlayCtrl 控件

设置属性


切换到“属性栏”,对窗体上的控件设置属性如表 61-1 所示。
属性

控件

属性


SldLeft

TickStyle

2-sldBoth

Max

100

Orientation

1-ccOrientationVertical

SldRight

SldLeft

LblBeijing

Text

清华大学

lbltotaltime

Autosize

True

BackStyle

0-Transparent

Mp3play1

Visible

False

其余控件

根据界面设置己可



添加代码


'选择mp3文件
Private Sub button1_Click(ByValeventSender As System.Object,ByVal eventArgs As System.EventArgs) Handlesbutton1.Click
Dim totaltimes As Integer
AXCommonDialog1.Showopen()
If Len(AXCommonDialog1.FileName) = 0 ThenExit Sub
Err.Number = Mp3Play1.Open(AXCommonDialog1.FileName,"")
'取得mp3文件的总时间
totaltimes = Mp3Play1.TotalTime
lbltotaltime.Text = "播放时间:" &Str(totaltimes \ 60000) & ":" & Str(Int((totaltimes Mod60000) / 1000))
lblmp3name.Text = AXCommonDialog1.FileName
'取得mp3文件的左右声道音量
leftvolume = Mp3Play1.GetVolumeLeft
rightvolume = Mp3Play1.GetVolumeRight
sldPos.Value = 0
'取得mp3文件的总帧数
sldPos.Max = Mp3Play1.FrameCount
lblframe.Text = "" & sldPos.Max & ""
button2.Enabled = True
button3.Enabled = True
button4.Enabled = True
End Sub
'开始播放
Private Subbutton2_Click(ByVal eventSender As System.Object,ByVal eventArgs AsSystem.EventArgs) Handles button2.Click
Mp3Play1.Play()
End Sub
'暂停播放
Private Subbutton3_Click(ByVal eventSender As System.Object,ByVal eventArgs AsSystem.EventArgs) Handles button3.Click
Mp3Play1.Pause()
End Sub
'停止播放
Private Subbutton4_Click(ByVal eventSender As System.Object,ByVal eventArgs AsSystem.EventArgs) Handles button4.Click
Mp3Play1.Stop()
End Sub
'程序启动时,必须进行注册,否则不能正确播放
'设置左右声道认值为中间值
Private SubForm1_Load(ByVal eventSender As System.Object,ByVal eventArgs AsSystem.EventArgs) Handles MyBase.Load
Mp3Play1.Authorize("LightBringer","1441658209")
SldLeft.Value = 50
SldRight.Value = 50
'在没有选择mp3文件之前,令播放、暂停、停止按钮不可用
button2.Enabled = False
button3.Enabled = False
button4.Enabled = False
End Sub
'改变左声道的音量
Private SubSldLeft_Change(ByVal eventSender As System.Object,ByVal eventArgs AsSystem.EventArgs) Handles SldLeft.Change
Mp3Play1.SetVolume(leftvolume * SldLeft.Value / 100,rightvolume *SldRight.Value / 100)
End Sub
'改变播放mp3文件的位置
Private SubsldPos_Change(ByVal eventSender As System.Object,ByVal eventArgs AsSystem.EventArgs) Handles sldPos.Change
Mp3Play1.Seek(sldPos.Value)
Mp3Play1.Play()
End Sub

来自 http://www.57itsq.com/read.php?tid-1654.html

原文地址:https://www.jb51.cc/vb/259218.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐