读书人

C#为何不能播放下一首歌曲?通过Windo

发布时间: 2013-10-06 18:25:14 作者: rapoo

C#为什么不能播放下一首歌曲?通过Windows Media Player
我在窗体中,添加了Windows Media Player控件,正常点击播放时,是
可以播放音乐的,现在我想要实现的功能是顺序播放每一首歌曲,
我的主要代码如下:


--------------------------------------------------
我该如何修改代码来实现播放下一首歌曲的功能呢?
难道真的要弹出一个对话框吗?
我试过了单独用一个线程来播放,但是这时不是播放下一首,而是播放下一首的下一首了。C#为何不能播放下一首歌曲?通过Windows Media Player

用线程播放时的代码如下:



//播放状态,1=停止,2=暂停,3=播放,6=正在缓冲,9=正在连接,10=准备就绪
if(1==(int)this.SongPlayer.playState)
{
if (t.Equals("顺序播放"))
{
int row = (this.PlaySongRow + 1) % this.lstSong.Items.Count;
this.lstSong.Items[row].Selected = true;
this.SongPlayer.URL = this.lstSong.Items[row].SubItems[3].Text;

Thread thd = new Thread (delegate() {
SongPlayer.Ctlcontrols.play(); //播放歌曲
});
thd.Start();
ChangeSongColor();

//去掉以下这行代码后可以播放下一首歌曲,
//将其注释掉后就停止播放了。
//MessageBox.Show(this.lstSong.Items[row].SubItems[3].Text);
}
}








播放器 Windows?Media?Player axWindowsMediaPlayer C# 下一首
[解决办法]
用线程干嘛?这个东西根本在这里用不着。。
[解决办法]
本帖最后由 caozhy 于 2013-05-21 19:25:14 编辑
        //using System.Runtime.InteropServices;

[DllImport("user32.dll", EntryPoint = "MessageBox")]
public static extern int MessageBox(int hWnd, String strMessage, String strCaption, uint uiType);



...
MessageBox(0, this.lstSong.Items[row].SubItems[3].Text, "caption", 0);
...

读书人网 >C#

热点推荐