0

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

该子负责检测更改:

Private Sub Wmp1_CurrentItemChange(ByVal pdispMedia As Object)

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

Val=Wmp1.currentPlaylist.Count

如果我想与我的 ListView 协调它,如何在再现中获取当前曲目(索引),以将具有相同索引的相同曲目选择到播放列表中。

谢谢你的帮助。

4

2 回答 2

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
于 2011-04-14T16:17:06.363 回答
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
于 2010-12-11T10:55:02.543 回答