Edward_Liang 2013-06-02 01:57 采纳率: 0%
浏览 4774

参考网上代码写的C#音乐播放器,无法实现自动播放下一首歌,求助!

全部代码太长,只把自动播放部分的代码贴出来:
private void timer1_Tick(object sender, EventArgs e)
{
// 用Timer控件控制连续播放
if (axWindowsMediaPlayer1.playState == WMPLib.WMPPlayState.wmppsMediaEnded)
{
if (playOne == false)
{
if (selectOne < listBox1.Items.Count)
{
selectOne += 1;
}
else if (selectOne == listBox1.Items.Count)
{
// 如果列表中所有媒体文件都播放完毕,则从头开始。
selectOne = 1;
}
}
listBox1.SelectedIndex = selectOne - 1;
Play(selectOne);
}
上述代码中selectOne表示正在播放的曲目的编号,playOne表示是否单曲循环。

我怀疑这个timer没有被触发,触发timer的代码如下:
private void button4_Click(object sender, EventArgs e)
{
if (listBox1.SelectedIndex < 0) //当前没有在播放列表中选定任何文件时,从播放列表的第一个文件开始播放
{
selectOne = 1;
listBox1.SelectedIndex = 0;
}
else
{
selectOne = listBox1.SelectedIndex + 1;
}
Play(selectOne);
this.Invoke(new MethodInvoker(timer1.Start)); //触发timer,写成 //timer1.Enabled= true也不行
button7.Enabled = true;
button8.Enabled = true;
button9.Enabled = true;

  • 写回答

4条回答

  • qaid 2015-03-12 02:31
    关注

    给你说下思路自己参考下

    评论

报告相同问题?

悬赏问题

  • ¥20 matlab计算中误差
  • ¥15 对于相关问题的求解与代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 信号傅里叶变换在matlab上遇到的小问题请求帮助
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作
  • ¥15 求NPF226060磁芯的详细资料
  • ¥15 使用R语言marginaleffects包进行边际效应图绘制
  • ¥20 usb设备兼容性问题
  • ¥15 错误(10048): “调用exui内部功能”库命令的参数“参数4”不能接受空数据。怎么解决啊