帮助wmp.dll(Windows媒体播放器)到vb 6

时间:2010-12-10 17:38:37

标签: vb6 windows-media-player wmp wmplib

我的VB 6应用程序存在严重问题。在其中,我在表单中引用了wmp.dll,它是播放媒体视频文件的想法,我有一个名为LV1的ListView,其中我显示了播放列表文件名。我想知道当前播放列表的当前索引。

该子负责检测变化:

Private Sub Wmp1_CurrentItemChange(ByVal pdispMedia As Object)

我可以用这一行将总计数计入播放列表:

Val=Wmp1.currentPlaylist.Count

如果我希望与我的ListView协调,我如何获得当前曲目(索引),以便在播放列表中选择具有相同索引的相同曲目。

感谢您的帮助。

2 个答案:

答案 0 :(得分:1)

在添加到setItemInfo之前,您可以在媒体上使用currentPlaylist

Option Explicit

Private Sub Form_Load()
    Dim sFile       As String
    Dim oMedia      As IWMPMedia

    sFile = Dir("c:\temp\*.avi")
    Do While LenB(sFile) <> 0
        Set oMedia = Wmp1.newMedia("c:\temp\" & sFile)
        oMedia.setItemInfo "Index", Wmp1.currentPlaylist.Count
        Wmp1.currentPlaylist.appendItem oMedia
        sFile = Dir
    Loop
End Sub

Private Sub Wmp1_CurrentItemChange(ByVal pdispMedia As Object)
    Debug.Print Wmp1.currentPlaylist.Item(Wmp1.currentMedia.getItemInfo("Index")).Name
End Sub

答案 1 :(得分:1)

这就是答案。你必须在循环中再次搜索

Dim i As Integer

For i = 0 To WindowsMediaPlayer1.currentPlaylist.Count - 1
If WindowsMediaPlayer1.currentPlaylist.Item(i).isIdentical(WindowsMediaPlayer1.currentMedia) = True Then Exit For
Next

List1.Selected(i) = True