我的VB6应用程序有一个严重的问题。在其中,我在表单中引用了wmp.dll,意思是播放媒体视频文件,我有一个名为LV1的ListView,我在其中显示播放列表的文件名。我想知道当前播放列表中的当前索引。
此sub负责检测更改:
Private Sub Wmp1_CurrentItemChange(ByVal pdispMedia As Object)我可以用下面这行代码将总计数放到播放列表中:
Val=Wmp1.currentPlaylist.Count我如何才能获得当前的轨道(索引)在再现,如果我想协调这个与我的ListView,以选择相同的轨道与相同的索引到播放列表。
谢谢你的帮助。
发布于 2010-12-11 18:55:03
在添加到currentPlaylist之前,您可以在介质上使用setItemInfo,如下所示:
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发布于 2011-04-15 00:17:06
这就是答案。你必须在循环中再次搜索
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) = Truehttps://stackoverflow.com/questions/4411684
复制相似问题