用VB6.0编写一个MP3播放器怎么编?各位高手给个代码或教程让小弟学习吧!

VB编程

第1个回答  2013-09-21
添加一个MMControl控件播放音乐,一个ListView控件显示播放列表,一个Slider控件显示播放进度条,其他按钮标签自己添加。 Private Sub Form_Load()
ListView1.ColumnHeaders.Add , , "名称"
ListView1.ColumnHeaders.Add , , "地址", 2500
ListView1.GridLines = True
ListView1.FullRowSelect = True
ListView1.View = lvwReport
ListView1.LabelEdit = lvwManual
ListView1.HideSelection = True
Slider1.Visible = False
End SubPrivate Sub ListView1_DblClick()
If ListView1.ListItems.Count = 0 Then Exit Sub '没有记录退出
If ListView1.SelectedItem Is Nothing Then Exit Sub '没有选中记录退出
PalyMusic ListView1.SelectedItem.SubItems(1) '调用PalyMusic过程播放音乐
End SubPrivate Sub MnuOpen_Click() ' 打开音乐文件 OpenFile.DialogTitle = "选择音乐文件"
OpenFile.FileName = ""
OpenFile.Filter = "MIDI音乐*.mid|*.mid|Wav音乐*.wav|*.wav|MP3音乐*.mp3|*.mp3" ' 设定打开文件类型
OpenFile.ShowOpen

If OpenFile.FileName = "" Then Exit Sub '如果没有选择文件名就为退出
ListView1.ListItems.Add , , OpenFile.FileTitle
ListView1.ListItems(ListView1.ListItems.Count).SubItems(1) = OpenFile.FileName
ListView1.SelectedItem = ListView1.ListItems(ListView1.ListItems.Count)

MMControl1.FileName = ""
MMControl1.DeviceType = "" '由系统默认设备类型
' '判断打开的音乐文件类型是否为MP3格式,如果MP3文件则指定多媒体设备类型为mp3audio
' MsgBox OpenFile.FilterIndex
' If OpenFile.FilterIndex = 3 Then MMControl1.DeviceType = "mp3audio"
PalyMusic OpenFile.FileName '调用PalyMusic过程播放音乐
End SubPrivate Sub MMControl1_StatusUpdate() '播放文件是发生

On Error GoTo Erropen
MMControl1.TimeFormat = 0 '设置文件长度以毫秒形式返回,
Slider1.Max = MMControl1.Length / 1000 '求得文件的最大长度
If MMControl1.Position <> MMControl1.Length Then '判断文件是否播放完毕
Slider1.Value = MMControl1.Position / 1000 '得到当前播放的位置
Else
MMControl1.Command = "Prev" '回到音乐文件的开如位置
Slider1.Value = 0 ' 当前值为0
End If
'调用ToMS函数计算剩余时间和总时间 Exit Sub
Erropen:
MsgBox "播放文件出错!", vbInformation Or vbOKOnly, "系统提示"
End Sub
Private Function ToMS(SM As Long) As String '自定义将毫秒转化为分、秒Tstring函数
Dim Ld_s As Double
Dim Ld_m As Double
Ld_s = (SM / 1000 / 60) Mod 60
Ld_m = (SM / 1000) Mod 60
ToMS = Format(Ld_s, "00") & ":" & Format(Ld_m, "00")
End FunctionPrivate Sub MMControl1_Done(NotifyCode As Integer) 'MCI 命令结束时发生。
MMControl1.UpdateInterval = 100 ' 间隔100毫秒
End SubPrivate Sub MnuClose_Click() '结束
MMControl1.Command = "Stop"
End SubPrivate Sub Paly_Click() '播放
MMControl1.Command = "Play" ' 继续播放
End SubPrivate Sub stop_Click() '暂停
MMControl1.Command = "Pause" ' 暂停播放
End SubPrivate Sub PalyMusic(FileName As String) '播放指定路径的音乐
MMControl1.Notify = False '不产生Done事件。
MMControl1.Wait = True '等到下一个 MCI 命令完成
MMControl1.Shareable = False '其它控件或应用程序不能访问这台设备
MMControl1.FileName = FileName
MMControl1.Command = "Open" ' 打开 MCI 设备。
MnuClose.Enabled = True
Slider1.Visible = True
End Sub
第2个回答  2013-09-21
用MMC控件或者WMP控件,都很简单,我提供一点代码,可以进行MP3的播放,但没有循环功能,循环功能你自己加吧,其实也是很简单的。MMC控件事例:一个MMC控件名字为:MMContorl1,一个Command控件名字为Command1,一个List控件名字为List1,一个CommonDialog控件名字为CommonDialog1代码:Pribate Sub Command1_Click()'向音乐列表(List1控件)中添加音乐CommonDialog1.DialogTitle = "选择媒体文件"CommonDialog1.Filter = "所有格式"'这里为了省事不写什么MP3格式啊之类的了CommonDialog1.filename = "" '初始化控件CommonDialog1.openIf CommonDialog1.filename ="" then exit sub '如果用户没有选择媒体文件则退出过程list1.addItem CommonDialog1.FileName '把用户选择的文件目录添加到列表中end subPrivate sub list1_click() ’列表的点击事件MMControl1.FileName = list1.text '设置播放目录MMControl1.Command = "open" '播放按钮可以响应用户事件end sub Private sub list1_Dblclick()'双击列表事件with MMControl1 '开始播放.filename = list1.text.command = "close".command = "open".command = "play"end withend sub
第3个回答  2013-09-21
你看看directsound

用VB6.0编写一个MP3播放器怎么编?各位高手给个代码或教程让小弟学习吧...
回答:用MMC控件或者WMP控件,都很简单,我提供一点代码,可以进行MP3的播放,但没有循环功能,循环功能你自己加吧,其实也是很简单的。MMC控件事例:一个MMC控件名字为:MMContorl1,一个Command控件名字为Command1,一个List控件名字为List1,一个CommonDialog控件名字为CommonDialog1代码:Pribate Sub Command1_Clic...

一个简单的vb打铃系统!!
ReDim timelist(4)'以两节课为例,即有四个时间点,保存在下面的数组中即可 timelist = Array(#8:00:00 AM#, #8:45:00 AM#, #9:00:00 AM#, #9:45:00 AM#)'指定铃声文件 MMControl1.FileName = "D:\\铃声.mp3"End Sub Private Sub Form_Load()'每30秒刷新一次 Timer1.Interval ...

各位VB高手,谁能帮忙写一个利用VB6.0的mscomm控件实现计算机单个com口...
MSComm1.PortOpen = True MSComm2.PortOpen = True If MSComm1.PortOpen Then MsgBox "串口已经打开"Else MsgBox "串口未打开"End If End Sub Private Sub Timer1_Timer()Dim Buff As String MSComm1.InputLen = 0 If MSComm1.InBufferCount > 0 Then Buff = MSComm1.Input Text1.Text = Tex...

用VB6.0 或者VBA 一个二维数组 急救
一定要用excel的话我有一段vba的code,如果你的数组是在Excel的vba里的话,可以先输出到excel的一个工作表再另存。(或者你把copy paste那段改了,直接在新的go能工作表里输出)Sub saveExcel()Dim bookName As String Dim srcBook, newBook As Workbook Set srcBook = ThisWorkbook bookName = "...

小弟我要学编程,请各位高手告诉我我是学vc容易还是学vb容易?
每个语言都有自己的特点.根据不同的需要用不同的语言,比如VB就易学易用,JAVA最大特点就是移植性好,VC++有更接近低级语言能做的更多.还有现在.net 是趋势,建议看看这方面的书.补充:不知道你的基础是什么,如果以前从来没接触过建议先学学遍程的最基础的东西,c语言,C++来入门 如果以前有基础学...

编写小的应用软件需要学什么语言?
VB 把过往的纯代码编程过度到可视化编程,将一些经常要使用到的功能以一个个的控件的形式出现,例如 Label(标签)、TextBox(文本框)等等的。他们在以前的编程工作中需要在使用时重复多次的输入同样的代码去实现这个功能,而这些代码却不是小工程,耗费了很大的人力物力和很多的时间。所以有了 VB 之后...

想问问各位编程高手最开始的时候是怎么下手的,也可以说是怎么从什么都...
第一个C语言程序,就是那个经典的HelloWorld,我调了几个星期,上机机会非常少,也没有书告诉我开发环境(TC2.0)需要设置,而且开始我都不知道有编译器,我甚至自作聪明把写好的程序扩展名从.c改成.exe,结果可想而知。 大一学完了C、X86的汇编、数据结构、C++。由于精力都花在自学上了,大一下四门课挂了彩,三类...

请问各位高手 VB6.0里面如何打印报表?最好可以把那段代码送我ia!小弟跪...
关键词 VB6.0,编程,报表一、 前言 Visual Basic开发数据库系统中,报表打印是其中最重要也是最常用的功能之一。按照报表实现的方法可大体上分为3类:第1类是较原始的方法,直接控制打印机对象Printer进行画线和打印;第2类是使用控件,如Data Report、Crystal Report、Active Report等;第3类是将需要打印的报表保存成...

求助,各位vb高手,帮忙设计一个用数组存储数据,利用vb6.0中的mschart控件...
新建工程,在表单上放置MSChart1控件,然后粘贴以下代码:Private Sub Form_Load()Dim D(1 To 10, 1 To 2) As Double, i As Integer Randomize For i = 1 To 10 '产生随机数 D(i, 1) = 100 * Rnd(1)D(i, 2) = -100 * Rnd(1)Next MSChart1.chartType = VtChChartType2dL...

学VB过时吗?请对VB做个平价。
希望你学完此教程后能达到下述的效果:从对编程一窍不通或从未接触过编程的状态,通过学习能够对VB6.0的编程环境比较熟悉,掌握VB开发界面的使用方法;对VB语言的基本语法大致了解,知道常见的语句的意义;学习VB常用控件的使用方法,并能将它们灵活运用到应用程序中;能开发简单的VB程序。到那时你已经能够...

相似回答