我正在尝试创建一个简单的媒体播放器,现在我可以播放一首歌曲并加载多首歌曲以创建一个播放列表,问题是当一首歌曲结束时,程序将无法继续播放下一首歌。
public void Play(int songNumber, Form f)
{
Load(Songs[songNumber]);
string Command = "play MediaFile notify";
mciSendString(Command, null, 0, f.Handle);
}
private void PlayBtn_Click(object sender, EventArgs e)
{
int length = AudioPlayer.PlaylistLength;
for (int PlayLoopcnt = 0; PlayLoopcnt < length;)
{
Player.Play(PlayLoopcnt, this);
}
}
protected override void WndProc(ref Message m)
{
if(m.Msg == MM_MCINOTIFY)
{
PlayLoopcnt++;
}
base.WndProc(ref m);
}
我有一个AudioPlayer类,它处理amedia播放器的所有方法,例如播放,停止等...
WndProc位于表单代码中,如果有人可以指出我做错了什么,甚至是正确的方法,我也会很高兴。