select 결과로 지정된 시간 동안 특정 노래를 재생하는 응용 프로그램이 있습니다.C#에서 노래의 길이를 설정하는 방법
이미 노래를 재생할 수는 있지만 시간을 설정할 수는 없습니다.
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 클래스를 사용합니다.
시간을 설정할 수 없다는 것은 무엇을 의미합니까? 달성하고자하는 목표는 무엇입니까? –
SoundROund PLAY()로 시작해야하고 몇 초 후에 STOP()으로 설정해야합니다. 나는 수면을 사용하여 스레드로 이것을 시도했다. 그러나 그것이 잘 작동했다고 생각하지 마십시오. – user1792343
아래 답변을 확인하십시오. 기본적으로 당신은 아무것도하지 않는 새로운 스레드를 시작하고 당신이있는 "메인"쓰레드 대신이 쓰레드를 잠자 요. 메인 루프에서 Thread.Sleep (time * 1000)을 호출하십시오 :) –