일정 기간 동안 양식을 보여주고 소리를 내기위한 약간의 코드가 있습니다. 그러나 양식은 열려 있습니다.C# : Thread.Sleep Not working
static void Main(string[] args)
{
SoundPlayer sp = new SoundPlayer();
ShowImage(@"Resources\Fish.png", "Fish", 256, 256, 1000);
sp.SoundLocation = @"Resources\fish.wav";
sp.Play();
}
public static void ShowImage(string img, string title, int width, int height, int timeout)
{
ImageContainer ic = new ImageContainer();
ic.imgView.Image = Image.FromFile(img);
ic.Text = title;
ic.Size = ic.imgView.Image.Size;
ic.Height = height;
ic.Width = width;
ic.ShowDialog();
Thread.Sleep(timeout);
ic.Hide();
ic.Opacity = 0;
ic.Dispose();
}
열린 상태로 닫히거나 숨기지 않는 형식으로되어 있습니다. ImageContainer는 imgView라는 PictureBox가있는 Form입니다. 닫히기 전에 1 초 동안 시간 초과가 필요합니다.
ShowDialog를() 호출을 기다리고 있습니다. Tick 이벤트 핸들러가 Close() 메소드를 호출하는 Timer가 필요합니다. Application.Run()을 호출해야합니다. 이런 종류의 코드로 문제가 생기면 책을 읽어야합니다. –