我已经开发了几个月的C#音乐播放器并且还没有使用内置的播放列表命令,现在回去做这件事已经太晚了。我现在使用此代码作为我的播放按钮(我们使用openfiledialog将音乐加载到列表框中):
private void Play_Click(object sender, EventArgs e)
{
WMPPlayer.URL = paths[filelist.SelectedIndex];
}
这是我的暂停代码:
private void Pause_Click(object sender, EventArgs e)
{
WMPPlayer.Ctlcontrols.pause();
}
没有计时器或进度条来判断它是否暂停,但它确实使音乐停止,因此它似乎正在工作。但是,当我点击播放后,它开始播放歌曲。我不知道如何在没有计时器的情况下保存歌曲的索引,然后进行播放按钮检查以查看歌曲暂停的位置。任何帮助将不胜感激。
答案 0 :(得分:0)
您可以使用
获取音频的当前位置double pausedPosition = WMPPlayer.Ctlcontrols.currentPosition
在您当前的实施中,您要在播放按钮中设置网址。我相信这是有效的,因为默认行为是它一旦设置了URL(WMPPlayer.settings.autoStart
)就开始播放。要获得更多控制权,您可以将其禁用并将“播放”按钮中的代码更改为:
WMPPlayer.URL = paths[filelist.SelectedIndex];
WMPPlayer.Ctlcontrols.currentPosition = pausedPosition;
WMPPlayer.Ctlcontrols.play();