私がやろうとしているのは、音楽ファイルを指定された時間だけ再生してから、再生を停止することです。ただし、音楽ファイル全体が再生されています。スレッドをブロックできないため、「PlaySync()」メソッドを使用できません。
1514 次
2 に答える
2
メソッド自体が行うので、自分で新しいスレッドを生成する必要はありませんSoundPlayer.Play
。
このバージョンを試してください:
public void Play()
{
player = new SoundPlayer();
player.SoundLocation = "myfile";
Timer timer = new Timer();
timer.Tick += (s,e) =>
{
player.Stop();
timer.Stop();
};
timer.Interval = duration;
player.Play();
timer.Start();
}
于 2011-12-16T09:49:53.367 に答える
2
多分このようなもの
Task.Factory.StartNew(() =>
{
var player = new SoundPlayer();
player.SoundLocation = "myfile";
player.Play();
Thread.Sleep(duration)
player.Stop();
});
于 2011-12-16T09:41:32.577 に答える