簡體   English   中英

媒體播放器如何播放列表框中的所有文件?

[英]Media player play all files in listbox how?

我有一個列表框,其中包含所有必須播放的媒體文件。 如何讓媒體播放器逐一播放? 這段代碼播放了一首歌但是foreach應該播放所有文件,但我認為這是因為它不會等到媒體結束..這段代碼:

Listbox = listBox3

listBox3Dict[s] =列表框中所有文件的字符串

            Dictionary<string, string> listBox3Dict = new Dictionary<string, string>();

>         private bool listbox3job()
>         {
>             AxWMPLib.AxWindowsMediaPlayer axWmp = wfh.Child as AxWMPLib.AxWindowsMediaPlayer;
>                 {
>                     foreach (var selected in listBox3.Items)
>                     {
>                         string s = selected.ToString();
> 
>                         if (listBox3Dict.ContainsKey(s))
>                         {
WMPLib.IWMPPlaylist playlist = axWindowsMediaPlayer1.newPlaylist("myPlaylist", string.Empty);
                            // you can add songs to url on for loop 
                            WMPLib.IWMPMedia temp = this.axWindowsMediaPlayer1.newMedia(listBox3Dict[s]); //Load media from URL. 
                            playlist.appendItem(temp); //Add song to playlist.
                            // after you add all songs set the new playlist
                            this.axWindowsMediaPlayer1.settings.autoStart = true; //not necessary
                            this.axWindowsMediaPlayer1.currentPlaylist = playlist; //Set media player to use the playlist.
>                         }
>                     }
> 
>                 return true;
>             }
>             return false;
>         }

你可以做的是創建玩家列表並開始播放該列表

private bool listbox3job()
{

    AxWMPLib.AxWindowsMediaPlayer axWmp = wfh.Child as AxWMPLib.AxWindowsMediaPlayer;
    WMPLib.IWMPPlaylist playlist = axWmp.newPlaylist("myPlaylist", string.Empty);

    foreach (var selected in listBox1.Items)
    {
        string s = selected.ToString();
        if (listBox3Dict.ContainsKey(s))
        {
            WMPLib.IWMPMedia temp = axWmp.newMedia(listBox3Dict[s]); //Load media from URL. 
            playlist.appendItem(temp); //Add song to playlist.
        }
    }
    axWmp.settings.autoStart = true; //not necessary
    axWmp.currentPlaylist = playlist; //Set media player to use the playlist.
    return true;
}

http://www.timwylie.com/playlist.html

之前我正在列表中處理一組語音文件。 我使用了PlayStateChange事件。 通過此事件,您可以找到MediaEnded狀態,您可以在其中將播放文件重新分配給列表中的下一個項目。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM