我在win2000 server+vb6下用mediaplayer6.4做一个多媒体播放器,请问当我选取了若干个mp3文件后,如何实现这些文件的顺序播放?我在网上找了一个例子,如下所示:
首先建立一个新窗体Form1,添加DriveListBox,DirListBox,FileListBox各一个,Caption属性分别设为Drive1,Dir1和File1,再添加CommandButton以及MediaPlayer控件各一个。然后编写代码如下: Option Explicit
Private Sub Command1_Click()
Dim num As Integer
Dim filename As String
Dim filenum As Integer
Dim i As Integer
num=File1.ListCount
filenum=FreeFile
Open ″C:\filelist.m3u″ For Output As #filenum
For i=0 To num-1
If File1.Selected(i) Then
filename=File1.Path+″\″+File1.List(i)
End If
Print #filenum,filename
Next
Close #filenum
MediaPlayer1.filename=″C:\filelist.m3u″
End Sub Private Sub Dir1_Change()
File1.Path=Dir1.Path
End Sub Private Sub Drive1_Change()
Dir1.Path=Drive1.Drive
End Sub
但我不知如何建立filelist.m3u文件,而且这个程序好象还有一些错误,总之我无法调试成功。请高手指点。
首先建立一个新窗体Form1,添加DriveListBox,DirListBox,FileListBox各一个,Caption属性分别设为Drive1,Dir1和File1,再添加CommandButton以及MediaPlayer控件各一个。然后编写代码如下: Option Explicit
Private Sub Command1_Click()
Dim num As Integer
Dim filename As String
Dim filenum As Integer
Dim i As Integer
num=File1.ListCount
filenum=FreeFile
Open ″C:\filelist.m3u″ For Output As #filenum
For i=0 To num-1
If File1.Selected(i) Then
filename=File1.Path+″\″+File1.List(i)
End If
Print #filenum,filename
Next
Close #filenum
MediaPlayer1.filename=″C:\filelist.m3u″
End Sub Private Sub Dir1_Change()
File1.Path=Dir1.Path
End Sub Private Sub Drive1_Change()
Dir1.Path=Drive1.Drive
End Sub
但我不知如何建立filelist.m3u文件,而且这个程序好象还有一些错误,总之我无法调试成功。请高手指点。
然后加入一个list控件,然后打开这个m3u,用line input读取,读取一行list增加一个内容,然后进行播放,播放完后,播放List1.List(List1.ListIndex + 1),也就是下一首。
.Filter = "列表文件(*.m3u;*.pls)|*.m3u;*.pls"
.Flags = cdlOFNFileMustExist
End With
CommonDialog1.ShowOpen
Dim aslist As String
Open CommonDialog1.FileName For Input As #1
Do Until EOF(1)
Line Input #1, aslist
List1.AddItem aslist
loop'播放我用api进行的,用控件也一样当播放完后就播放List1.List(List1.ListIndex + 1)就可以实现连续播放了