0

VB6アプリケーションに深刻な問題があります。その中に、フォーム内の参照があります。これは、メディアビデオファイルを再生するという考えです。プレイリストのファイル名を表示wmp.dllするListViewが呼び出されます。LV1現在のプレイリストから現在のインデックスを知りたいです。

このサブは、変更の検出を担当します。

Private Sub Wmp1_CurrentItemChange(ByVal pdispMedia As Object)

次の行を使用して、合計数をプレイリストに含めることができます。

Val=Wmp1.currentPlaylist.Count

ListViewと調整したい場合に、再生中の現在のトラック(インデックス)を取得して、プレイリストに同じインデックスを持つ同じトラックを選択するにはどうすればよいですか。

ご協力いただきありがとうございます。

4

2 に答える 2

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 に答える
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 に答える