说三道四技术文摘-感悟人生的经典句子
说三道四 > 文档快照

用VB5.0编写自己的MP3播放器

HTML文档下载 WORD文档下载 PDF文档下载
用VB5.0编写自己的MP3播放器
作者:杨山河
MP3播放器大家用得应该不少,不过,您是否厌倦了播放器的老面孔,是否尝试编写一个自己的MP3播放器呢?什么,太复杂!你会VB吗?会就得了! 首先,得了解一下我从朋友处得来的一个ActiveX控件——Mp3Play.ocx。所谓ActiveX控件就是高手早已编好的专门化功能软件部件。以前在16位VB中是以vbx作为扩展名,Win95中扩展名改为ocx。大家只要知道Mp3Play.ocx是一个专门播放MP3音乐文件的VB控件就行。我们编写自己的播放器,使用该控件,并适当设置其属性,就可以获得专业级的MP3音乐效果。要想使用该控件,最好将它放到Windows\system目录,并且在注册表中注册。利用该控件,还可以将一个MP3文件解码为一个WAV文件。 Mp3Play.ocx的主要属性有:

BitRate :MP3流比特率;FrameCount:MP3流帧记数;TotalTime: 总计已播放的时间;FrameNotifyCount( RW ):发送一次通告的帧数,缺省为32;IsCopyrighted、IsOriginal、HasChecksums: 从MP3流获得的发行信息;SampleFrequency:采样率;Layer:取值可以为1、2、3,分别代表Layer1、Layer2、Layer3的标准,缺省为3,这意味着MPx的文件都可以播放;MPEGVersion:取值代表MPEG-1或MPEG-2。 常用的方法有:

AboutBox ( ):显示About框。

Authorize ( Name, Password ):验证许可证(注册码),Name即注册名,Password为注册码,由控件的提供商在用户注册后提供,返回值为0则通过,否则为5。 Open ( Inputfile, Outputfile ):打开MPEG音频文件并解码播放,若在声卡上播放则Outputfile应为空串,返回非0值表示解码有误。如果Outputfile为文件名则解码至WAV文件。也就是说,可以利用此方法编写MP3-WAV转换器。 Close:关闭当前MPEG流解码。

GetVolumeLeft,GetVolumeRight:获取左右声道的音量,返回Long型值。 SetVolume ( left channel, right channel ):设置系统左右声道音量。 Pause( ):暂停,奇次声音暂停,偶次开启。

Play ( ):开始解码,并播放当前MPEG文件,返回0表示解码无误。 Stop( ):停止当前解码工作,返回非0表示有误。

下面,我们一步一步地完成:

1. 添加Mp3Play.ocx控件

启动VB5,选择Standard EXE。此时,左边的控件面板中只是一些Win95标准控件。我们选Project(工程)菜单下的Components...(组件)项,在弹出的对话框中选中Dialog-Medien Mp3Play ActiveX Control Module项。这“宝贝”即我们所需的MP3控件。确定后在控件面板中会增添一个蓝色的喇叭图标,表示该控件已经添加到控件面板中。 2. 设置属性

点中蓝色喇叭,在窗体中拖动一个矩形框,松开后在窗体中出现MP3控件图标。为了在播放时隐去喇叭,在MP3Play1的属性表中将Visible设为False。一般就这么多,剩下的就是使用它的方法(Methods)了。 3. 添加按钮

点中“Command”按钮,在窗体中建立三个名字分别为Command1、Command2、Command3的命令按钮,将它们的Caption分别设为“选择MP3文件”、“播放”、“暂停”。 4. 添加CommonDialog控件

为能方便地选择MP3 文件,还需文件打开对话框。如果控件面板中没有此控件,如1中所述选中Components菜单项,在Microsoft Common Dialog Control 5.0前的复选框中打勾,确认后即可在控件面板中看到此控件图标。在窗体中建立一个名为CommonDialog1的对象,为使能快速找到MP3的文件,需要设置它的Filter属性为“.MP3|.MP3”。 5. 在按钮中编写相应的代码

双击Command1,在Private Sub Command1_Click()中输入以下代码: CommonDialog1.ShowOpen

双击Command2,在Private Sub Command2_Click()中输入: Err = Mp3Play1.Open(CommonDialog1.filename, ″″) Mp3Play1.Play

双击Command3,在Private Sub Command3_Click()中输入: Mp3Play1.Pause

6.调整窗口大小,运行播放器

适当调整窗体的外观,如大小、颜色等,怎么舒服您就怎么设置。好了,开始按F5运行,选择MP3文件——播放!感受一下您自个儿的MP3播放器吧! 此外,您还可以用Photoshop等软件制作一些漂亮的界面,贴在窗体上,增强其艺术性。还可以仿照Winamp的“Plug_ins”,利用Timer控件完成一些特殊的动画效果。当然,一切都靠您自个的天才去设计了。顺便在此请教诸位大侠,哪儿有未加时间限制的Mp3Play.ocx,或者您有注册号,请告诉在下。我因没有注册码,每首歌曲只能播放30秒。
15款开源Android游戏引擎(安卓免费游戏引擎) 将MVC ASPX转换到Razor视图 Word设置目录简明教程 asp.net mvc页面javascript代码中如何使用razor Discuz X论坛数据表结构:用户数据表pre_common_member boost在windows平台下自带超强 IOCP 的ASIO Boost下载和编译安装简明指引 Windows和Linux环境中Boost下载安装编译配置使用指南 Android开发技巧:Android常用类库说明 Android开发技巧:Android 文件系统 Android开发技巧:Android应用程序架构 ASP.NET MVC Razor 输出没有编码的HTML字符串 ASP.NET MVC 3 Razor 在head里包含js文件 JQuery mobile介绍 JQuery Mobile 页面结构 什么是云计算的通俗理解 什么是Hadoop以及与云计算的关系 创建一个Windows Phone 7推箱子益智游戏 好用的在线编辑器百度UEditor ASP.NET如何从URL或route数据中得到controller类型和action信息 Discuz X论坛数据表结构:论坛主题数据表pre_forum_thread Discuz X论坛数据表结构:论坛帖子数据表pre_forum_post jQuery UI 消息框(message box)的使用 kmp算法中的求Next()函数的算法 ASP.NET MVC3 如何将DataTable绑定到Html.DropDownList PHP调用COM组件 农行网上银行支付接口:无法读取商户端配置文件 农行网上银行支付接口:商户代理卖方挂单成交功能测试 Windows Phone 7 实现简单的GPS定位器 C#如何删除string中的Html标记 ImageStone图像处理C++类库 IE菜单问题 怎样区别打开文本文件是big5码还是gbk码?? 大侠们,更新数据库里面的Images类型的字段的SQL语句怎么写啊,有什么好方法吗? Visual studio .net是用什么开发的啊?大家来讨论一下 求好书!!!! 我如何是好! c++的CODE如何才能最好的移植成java的 求好书!!!! 谁有字符串的压缩算法!!!慷慨送分!!! 视频数据如何在数据库中操作 求好书!!!! ??? 我需检验某表单的文本框中只能有数字,字母等字符,是用javascript做,还是用JSP做? 求好书!!!! 我为何添加不了成员变量 浏览器不能浏览JAVA2写的Applet,那里可有升级包? 还是有关于图片上传,请高手帮忙 加强型的 MSFlexGrid 我认识 KiteGirl(小仙妹) ( 是个好女孩 代表到底是什么东西? 有良知的中国人近来看看! 在vb中做的ActiveX DLL文件如何在vc中调用????? 谁能给我提供磐英810主板的显卡驱动 请问用PDM从数据库中反生成的数据模型,连接到另外的数据库中生成库表,为什么会失败? 请问如何将office2000或office xp 的激活提示除掉 怎么在LINUX下编译JAVA? 请问foxbill:.h文件之前的这些都是什么意思? MEMFILE例子的-----送分帖! 请问如何将office2000或office xp 的激活提示除掉 关于class的问题 我的“路由和远程访问” 出了一个怪问题 用VB设计自己的E-mail系统 这个就是你们说的美女檬檬吗? 我觉得....... 两个小问题————高手赐教! 一个局域网内监控程序,有点问题,请大家帮忙看看! 怎么在LINUX下编译JAVA? ADO数据库简单问题? -128的原码,反码,和补码是什么 ado问题,紧急!高分求救 展望COM,我的COM学习计划!来看看! 借宝地一用,请有良知的中国人近来看看--印尼华人! 拨号上网问题 人民银行网站建设中数据库存储过程的调用 100分求解一个能打印*.frm的控件,提供相关资料的也给分,27号晚5:00结账送分 visual C++ ??? Delphi??? 我憋的难受! 一个编译错误。不知道是什么原因 请问如何使用vbscript删除表的一行(制定行) OracleOraHome81ManagementServer起不来? 关于Tuxedo? 使用apache映射虚拟目录的问题! 谁有VC下类EXCEL的代码 纱布和擦镜纸用在显微镜上的区别?就是纱布什么时候用,擦镜纸什么时候用?比如擦镜头时用什么? 一个画家有14个边长为1m的正方体,在地面上把它们摆成如图的形状,然后他把露出表面都涂上颜色?一个画家有14个边长为1m的正方体,在地面上把它们摆成如图的形状,然后他把露出表面都涂上颜 填成语(要填人体器官或部位的名称)焦()烂()还有促()谈() 已知如图在△ABC中,∠ACB=90,CD⊥AB,∠1=∠2 FG∥AB求证CE=BG大哥大姐图片送到 英语翻译I like to take my camera with me wherever I go.That way,if I see something interesting,I can snap a picture of it.我喜欢带着相机,无论我去哪里.那样的话,如果我看见一些有趣的,我能怕张照.wherever 作连词,引 成语:横线上需填人体器官或部位名称--黄--瘦-- --相依劈--盖----高--低 各位大哥大姐,行行好,帮个忙!一支内径为3厘米的圆柱形长试管中装满了水,现把试管中的水逐渐滴入一个内径为8厘米、高为1.8厘米的圆柱形玻璃杯中,当玻璃杯装满水时,试管中的水的高度下 英语翻译a thought hit me especial 物体重力500N,在水平支持面上匀速运动时所受的摩擦力为200N,则F=? 巧填成语(人体器官)( )挥( )送 为什么在照相机镜头前加一个偏振片可以滤掉玻璃反射的光? 成语 ( ) 重( ) 轻(填人体器官或部位名称) 帮填一下带有人体器官的成语改()换() 以()代() 刎()之交 推()置() 量()裁衣 各位大哥大姐们,小妹又有几条数学题不会了,帮个忙,嘻嘻……这次的是几条应用题,所以太复杂的小妹又看不懂,所以有的方程最好简单一些,还有这是应用题,所以一定要有过程!姐姐、哥哥们, 某高楼共26层出于安全考虑电梯运行的最大速度为4m/s最大加速度为2m/s²,某人质量60kg乘电梯从1楼到26楼最短时间为20s 求每层楼高多少 求此过程中电梯的平均速度 高低密度脂蛋白比值的意义我最近体检,体检单上写着:HDL-C/LDL-C=0.57,高.参考范围0.17-0.45.这种结果是好还是好.高密度脂蛋白/低密度脂蛋白,这个比值是不是越大越好?谢谢行家指导. 摄影时,镜头前面插一块玻璃是什么意思 在托盘台秤上放有一个装水的烧杯,烧杯和水的总质量m总=2kg,一个质量m=900g,体积 V=200cm³的实心物体被用细绳吊着浸在水中.(g=10N/kg)求:此时托盘台秤的示数是多少? 在实验室里做钠跟水反应的实验时,为什么要用玻璃片 如图所示,斜面高为1m,长为3m,工人用400N沿斜面方向的力 将重为840N的箱子推到车上.在这过程中工人做如图所示,斜面高为1m,长为3m,工人用400N沿斜面方向的力将重为840N的箱子推到车上.在这过程 台秤上放一杯水,放入一块冰块,台秤示数将增大还是减小将一块冰用细线拴住慢慢地浸入水中。(是水不是酒精),并保持悬置状态,在冰块浸入的过程中,台秤读数将——;冰块融化过程中 牛顿环实验时,平面圆玻璃下为什么要放黑纸 一斜面高为1m,长为3m,工人用400N沿斜面方向的力将重为840N的箱子推到车上.在这过程中工人做的有用功是_840_______J,机械效率是___70%___________,物体所受的摩擦力为___________N.若斜面是光滑的,则 托盘台秤上放有一个装有水的烧杯,质量为900g,体积为200cm3的实心物体被细线吊着浸没在水中.此时,托盘台秤的示数由哪些因素决定?可不可以给出具体计算的过程? 真空镀膜实验中,为什么要清洗玻璃片 斜面高为1m,长为3m,工人用400N沿斜面方向的力将重为840N的箱子以0.5m/s的速度匀速地推到车上.在这过程工人斜面高为1m,长为3m,工人用400N沿斜面方向的力将重为840N的箱子以0.5m/s的速度匀速地推 如图所示,台秤上放有一个装有一定量水的容器,台秤的读数为12N,某人用细绳吊一个体积为100cm3,重为2N的小石块浸没在容器的水中,石块没有触到容器底,则台秤的读数为13N,若将细绳剪断,则石块 3mmol/L总硬度等于多少mg/L? 如图所示,斜面高为1m,长为3m,工人用400N沿斜面方向的力将重为840N的箱子推到车上.总功为多少 地球的半径为r,地面附近的物体重力为g0,则距离地面高度为h处物体的重力加速度为多大?质量为m的物体在这一高度上对地球的引力大小为_____【知道第一个问是[r/(r+h)]^2*g ,想知道第二个问】 把一个重为600N的货物推到车上,这时木板成为一斜面,斜面长3m,设斜面是光滑的,人的推力为多大? 斜面高1m長3m 人用400N沿斜面方向推840N推上車有用功多少 機械效率多少 地球的半径为R,地面附近的物体重力加速度为g.则距离地面高度为h处物体的重力加速度为多大? 3m的八分之一和1m的三分之一哪个更长一些要过程~!!! 一斜面长10m,高4m,沿斜面方向的推力F,将重100N的物体由底端推到顶端的过程做了100J的功求1,运动过程克服物体重力做的功?.2,斜面的接卸效率.3,推力F的大小. 希望拜托了)设地球表面的重力加速度为g0,物体在距地面3R(R为地球半径)处,由……设地球表面的重力加速度为g0,物体在距地面3R(R为地球半径)处,由于地球作用而产生的加速度为g,则g/g0为()A 斜面长5m 要把一个600N重的物体沿斜面匀速推动至顶端 所加推力为多少N? 斜面长S=10 高h=4 用沿斜面方向的推力f 将一个重为100N的物体由斜面底端A匀速推向顶端B过程中物体克服摩擦力 做功100J 求1,运动过程中克服物体的重力做的功2,斜面的机械效率3,推力F的大小 电梯与水平面夹角为37度,60千克的物体随电梯以a=1m/s2的加速度上升运动,则物体受到斜面的支持力,摩擦力? 1m的四分之三与3m的百分之25比较哪个更长些? 语文四年级黄冈小状元暑假作业答案.答案不见了. 在电梯中,以1m/s2的加速度加速上升和0.5m/s2加速度减速下降哪个秤示数更大? 小熊在实验时,先用一块清洁纱布擦拭目镜,再将玻璃标本放在显微镜载物台正中央,用压片夹夹住,然后双眼侧视下,将物镜缓缓下降,接着,小熊用左眼朝目镜里观察,同时转动细准焦扭,缓缓上升 语文黄冈小状元四年级上答案 人的重力为500N,电梯的加速度为1m每秒放,求此时人对电梯的重力为什么是550? 如图所示,斜面长s=4m,高h=1.2m,用沿斜面方向的推力F,将一个重为500N的物体在10s内由斜面底端匀速推到顶端,运动过程中对物体的推力F保持300N.求:⑴克服物体重力做的功;⑵推力所做的功;⑶ 黄冈小状元作业本四年级语文下人教版答案 初二的一道三角形的数学题在三角形ABC中,AB>AC,D为BC中点,DE垂直BC交角BAC的平分线AE于点E,EF垂直AB于点F,EG垂直AC交AC的延长线于点G.求证:BF=CG. 小熊在实验时,先用一块洁净纱布擦拭目镜,再将玻璃标本放在显微镜在舞台正中央,用压片夹住(两处错误)然后在双眼侧视下,将物镜下降.接着小熊用左眼朝目镜里观察,同时转动细准焦螺旋, 如图所示,一质量为m、边长为a的正方体与地面之间的动摩擦因数μ=0.1,为使它水平移动距离a,可采用将它翻倒或向前匀速平推两种方法,则A.将它翻倒比平推前进做的功少 B.将它翻倒比平推前 问一道初二关于三角形的数学题如图已知:△ABC中,∠C=90°,D、E是AB边上的两点,且AD=AC,BE=BC.求∠DCE的度数. 如图所示,斜面长S=10,高h=4m,用沿斜面方向的推力F,将一个重为100牛的物体由斜面低端A匀速推到顶端b,运动过程中物体客服摩擦力做了100J,求(1)运动过程中克服物体的重力做的功;(2)斜面 四年级下册语文黄冈小状元答案快! 地球半径为R,地面附近物体的重力加速度为g,则距离地面高度为2R处物体的重力加速度为?为什么是1/4g? 小熊在做实验时,先用一块洁净纱布擦拭目镜,再将玻片标本放在显微镜载物台正中央,用压片夹夹住.然后在双眼侧视下,将物镜下降.接着小熊用左眼朝目镜里观察,同时转动细准焦螺旋,缓缓上 如图,是边长为1m的正方体,一只蜘蛛潜伏在A处,B处有一小虫被蜘蛛网粘住,请你测算蜘蛛从A爬行到B的最短路线. 地球半径为R,地球表面的重力加速度为g,则在距离地面高度H=R的地方,下列说法正确的是:A.质量为m的物体在该处的重力大小为0.5mgB.通过该处绕地球做匀速圆周运动的人造卫星的运动的角速度 使用显微镜时,当载物台不清洁时,应用什么擦净,纱布还是擦镜纸?为什么? 边长为0.1m的正方体木块,放在图19所示的容器中.现缓慢持续地往容器中注水,一段时间后,木块浮走知木块的密度为0.6×103kg,g取10N/kg.求:(1)木块所受的重力为多少?(2)容器中水面升至多高时, 地球半径为R,底面附近的重力加速度为g则距离地面高度为h处物体的重力加速度g'=Gm/(r+h)^2.地球半径为R,底面附近的重力加速度为g则距离地面高度为h处物体的重力加速度g'=Gm/(r+h)^2,一物体在
备案号:鲁ICP备13029499号-2 说三道四 www.s3d4.cn 说三道四技术文摘