龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > 软件开发 > VB开发 >

用MMControl控件播放M3U文件的实现

时间:2009-12-30 15:42来源:未知 作者:admin 点击:
分享到:
在以前,VB程序员大都以为MMControl控件在应付媒体文件方面不是很争气,笔者甚至在一些颇有权威的书籍上看到在探讨完这个控件之后建议读者:如欲编制一个能播放MP3文件的播放器,

在以前,VB程序员大都以为MMControl控件在应付媒体文件方面不是很争气,笔者甚至在一些颇有权威的书籍上看到在探讨完这个控件之后建议读者:如欲编制一个能播放MP3文件的播放器,请去找相关控件。其实,这是对MMControl的误解。MMControl作为能对系统硬件进行操作和控制的控件,其功能是强大的,它对付MP3也不在话下!不信?我以前也不信――专家都这么以为嘛。可现在我信了:我在VB6.0、PWin98下试验成功!播放质量?呵呵,比Mediaplayer好不了多少。Bill的东西嘛,让人又爱又无奈……

遗憾的是,MMCtrol控件不支持M3U列表文件。这得处理一下。谁叫M3u那么方便呢?

我们知道,M3U其实是和TXT文件性质一样的东西,都是文本文件。M3U文件所存储的内容是一系列的媒体文件所在的二进制地址,如将M3U文件打开并把各个媒体文件所在位置的标志存入数组,就可以叫MMControl一一地播放了。考虑到资源的占用问题,笔者以下的实例将M3U文件的内容打开后添加到列表框,然后让MMControl进行处理,有兴趣的朋友可以试一下数组。

本例需要:按钮若干;列表框一个;Timer一个;ProgressBar(进度条)一个;老M当然不能少了。

详细代码如下:

Option Explicit

Dim MaxVal As Long '进度条Max值变量
Dim MyInd As Integer '播讲的文件索引变量
Dim sF As String '要播放的M3U文件

Private Sub cmdNext_Click() '“下一首”按钮代码
PlayNext
List1.SetFocus '让按钮好看点,下同
End Sub

Private Sub cmdPause_Click() '“暂停”按钮代码
MMControl1.Command = "Pause"
List1.SetFocus
End Sub

Private Sub cmdPlay_Click() '“播放”按钮代码
List1.SetFocus
If MMControl1.Command = "Stop" Or MMControl1.Command = "Pause" Then
MMControl1.Command = "Play"
Else
Call PlayMe '交给PlayMe处理
End If
End Sub

Private Sub cmdExit_Click() '“退出”按钮代码
MMControl1.Command = "close" '关闭以释放资源
End
End Sub

Private Sub cmdPre_Click() '“前一首”按钮代码
Timer1.Enabled = False
List1.SetFocus
If MyInd = 0 Then '当前是第一首则播放最后一首
List1.ListIndex = List1.ListCount - 1
Else '否则播放前一首
List1.ListIndex = MyInd - 1
End If
MyInd = List1.ListIndex '这个变量要记得改哟
Call PlayMe
End Sub

收藏文章
表情删除后不可恢复,是否删除
取消
确定
图片正在上传,请稍后...
评论内容为空!
还没有评论,快来抢沙发吧!

热评话题

按钮 内容不能为空!
立刻说两句吧! 查看0条评论
精彩图集

赞助商链接