我有一个应用程序,可以根据选择的结果在指定时间内播放特定歌曲。
我已经可以播放歌曲,但无法设置持续时间。
public void PlaySound()
{
int i = 0;
foreach (string musicFile in musicFiles)
{
Thread thrStopMusic = new Thread(ThreadTimer);
player.SoundLocation = musicFile;
musicExecuteTime = GetMusicDuration[i];
player.Play();
thrStopMusic.Start();
thrStopMusic.Abort();
i++;
}
}
public void ThreadTimer()
{
Thread.Sleep(musicExecuteTime * 1000);
StopSound();
}
我正在使用 SoundPlayer 类。
最佳答案
也许我没有正确理解你的意图,但为什么你甚至使用线程来计时(而且我猜 StopSound()
不是合适的调用方法)?为什么不只是:
...
player.Play();
Thread.Sleep(musicExecuteTime * 1000);
player.Stop();
...
关于c# - C# 设置歌曲时长的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16775521/