|
먼저 답변 감사합니다..
제가 질문을 너무 모호하게 올렸습니다..^ ^
좋은 하루 되십시오
수고하십시오~~~
장성호 님이 쓰신 글 :
: ----------- 먼저번 질문 내용 -------------------
: 고수님들 안녕하세요~~~
:
: 궁금한 게 있어서 이렇게 글을 남겨 봅니다.
:
: 메인폼과 프로그레스바를 위한 폼 이렇게 폼 두개를 만들어서요.
: 메인폼에서 프로그레스바 역할을 하는 폼을 show()하였습니다.
: 이때 프로그레스바 역할을 하는 폼의 폼스타일은 fsStayOnTop입니다.
: 문제는 프로그레스바 역할을 하는 폼이 show()되었을때, 다른 윈도우(인터넷익스플로러와 같은 다른 프로그램..)
: 가 디스플레이 되면 프로그래스바 역할을 하는 폼을 close()해도 메인폼이 종료되기 전까지 계속 존재합니다.
:
: 답답하네요. visible일때 close() 기타 등등.. 테스트해보았는데.. 그대로네요.
: 더 신기한건.. 프로그레스바 역할을 하는 폼이 화면에 떳을때, 다른 윈도우가 뜨고 그 윈도우를 이동하였을때만
: 존재하고요.. 만약 다른 윈도우가 뜨고 그대로 유지하면 정상적으로 프로그레스바 역할을 하는 윈도우가 사라진다는겁니다.
:
: ------------------------------------------------------------
: 답변
:
: 1. 보이는것과 존재하는것을 조금 이해가 안되게 질문을 올렸네요
: - 님의 소스에서 Form2는 항상 존재합니다. 프로그램이 종료하기까지..
: - 왜냐하면 Form2->Close는 Form2가 안보일뿐이지 삭제되지는 않습니다.
: - 만약 메모리에서 완전히 사라지게 하려면...
: delete Form2; 하거나..
: Form2->OnClose 이벤트에서 Action=caFree ; 로 설정해주시면 됩니다.
: 문론 다시 Form2를 쓰려면 Form2=new TForm2(this); 해줘야겠죠..
:
: 2. 프로젝트 옵션에서 "Forms"를 보시면 auto-careate forms 에 Form1과 Form2가 들어있네요
: 즉 프로그램이 시작할때 Form1과 Form2가 자동생성되죠
: 이 두폼이 실제 생성되는 부분은 progress_test.cpp 에서 WinMain함수의 내용을 보시면 나옵니다.
:
: 3. 그리고
: "문제는 프로그레스바 역할을 하는 폼이 show()되었을때, 다른 윈도우(인터넷익스플로러와 같은 다른 프로그램..)
: 가 디스플레이 되면 프로그래스바 역할을 하는 폼을 close()해도 메인폼이 종료되기 전까지 계속 존재합니다. "
:
: 위말은 이해가 잘안됩니다.
:
:
:
:
:
: jini 님이 쓰신 글 :
: : 안녕하세요~~ 고수님들..
: :
: : 먼저 답변 감사합니다..
: :
: : 여전히 삽질중입니다.^ ^
: :
: : 음.. 제가 무언가 놓치고 있는듯한 기분인데요..
: :
: : 소스를 올렸으니.. 많은 답변 부탁 드립니다.
: :
: : 좋은 하루 되세요
|