퇴근5분전

 

  이게 버그가 맞는지 원래 이런건지.. 고칠수 있는건데 잘 못 짠건지... 

잘은 모르겠다.

 

 로딩바! 구현해서 잘 사용하고 있던건데...

 

이번 프로젝트 로딩바가 구리다고 해서... 가져갔는데...

 

덜컹... 데드락이 걸린당?!!!  뭐지??? >>> 오전내내 잡다가 또 다른거 시켜서 못했음..

 

집에와서 코드로 이리저리 만들어보다가...

 

"설마.. MDI 환경에서 폼 로드를 해서?"  ... 설마하며 똑같이 MDI로 변경하고

 

자식폼을 로딩하면서... < 로딩이벤트에서 로딩바 호출...

 

똑같이 DeadLock!! 어랏...

 

Thread로

{

        로딩폼 생성                         <<< 1

        Application.Run( 로딩폼 )

}

 

while( 로딩폼 != null || 로딩폼 핸들 만들어졌나? == 아니 ) <-- 이 구문이 없으면 로딩바가 종료호출후에도 안꺼지고 살아있음.

{

   쓰레드.재우기( 50 );  <<< 2

}

 

1, 2 를 왔다 갔다....  무한반복한다.

 

아... 이런 썩을..

 

그래서 로딩바 호출을 .Shown 이벤트로 옮겨봤다.

잘 되넹? 오호..

 

그래서  이번엔 다시 로딩바 호출을 로드이벤트로 옮겨놓고

자식폼.MDIParent = this; 를 빼봤다.

 

잘 뜬다.

 

그래서 이번엔

 

자식폼.Shown += ( ss, ee )=> 자식폼.MDIParent = this ;

 

했더니 보기 흉해도 잘 뜬다.

 

 

구글링을 30분동안 해봤지만 짧은 영어로는 못찾겠다.

 

그냥 가이드로 로드이벤트 내에서 호출하지 말지어다.

{ 생성자, Shown 이벤트에서 잘됨 }

 

 

...............

 

티스토리 발행하면 이상한 사진을 몇번씩이나 고르게 하더니 사라졌네???