작성
·
226
답변 1
0
안녕하세요.개발자Park입니다.
[UIThread 가 멈추면 제어가 안된다라는데 어떤 제어가 안된다는지가 궁금합니다.]
동영상에 나오는것처럼 Form2화면의 이동.클릭기능등 UI제어가 안되시는 것을 보실 수 있습니다.
[실행시 두개의 Form1과 Form2가 로드 되는데 로드는 정상적으로 되는데 어떤 제어를 말씀하시는지 잘모르겠습니다.
개별 쓰레드 동작이 안된다고 하는데 두개의 폼이 저는 정상적으로 로드가 됐거든요]
2개의 폼은 아래코드가 동작하면서 모두 정상적으로 나오실 겁니다.
private void Form1_Load(object sender, EventArgs e)
{
Form2 form2 = new Form2();
form2.Show();
그러나 Form2가 보이고나서 5초동안 UI제어및 어떠한 코드도 동작안하게됩니다.
Thread.Sleep(5000);
이를 좀더 확실히 보고싶으신경우 아래와 같이 확인하실 수 있습니다.
버튼을 한개생성 후
private void Form1_Load(object sender, EventArgs e)
{
}
private void button1_Click(object sender, EventArgs e)
{
Form2 form2 = new Form2();
form2.Show();
Thread.Sleep(10000);
}
이런식으로 해보시면 Form2가 보인 후 Form2는 물론 Form1도 제어가 안됩니다.
Thread.Sleep(10000);를 제거하고 폼의 이동,닫기버튼을 해보시면 차이점을 보실 수 있습니다.
감사합니다.
아 그렇군요 ~
폼2 가 뜨기 전까진 제어 안된건 봤었습니다