C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 Q&A
C++Builder Programming Q&A
[53063] Re:re : Deactivate 는 안되네요...
장성호 [nasilso] 1266 읽음    2008-04-10 10:38
Deactivate이벤트가 발생하려면...

먼저 알아야 할것은?
Deactivate이벤트는 TScreen객체에서 발생시켜주는 메세지입니다.
즉 시스템(윈도우)에서 보내주는 메세지가 아니라는것입니다.

그리고 확인사항1
님께서 원하시는것이 ComboBox에 DropDown 되었을때 보여주는 윈도우같은것이라면...

1. 같은 application에서 다른 폼을 클릭했을때 DropDown된 폼은 close되어야 할것이구
2.  DropDown폼이 Show된 상태에서 다른 프로그램을 선택했을때도  close되어야 할것입니다.

그러기 위해선..
1. 먼저 "정성훈.해미"님에 제시한 방법을 그대로 쓰구요
    ( Deactivate와 KeyPress이벤트...)

2. Form을  ShowModal로 띄우지 마시고 Show로 띄우세요
   그래야 같은 application에서 다른 폼을 클릭했을때 Deactivate이벤트가 발생합니다.

3. 마지막으로 다른 application을 클릭했을때 close하려면
     WM_ACTIVATEAPP 메세지를 잡아서요 wParam이 0 인 경우에 close해주시면 되네요
    이 메세지가 application이 active=false되었다는 메세지입니다.

그럼..



방태윤 님이 쓰신 글 :
: Deactive 가 아니라 Deactivate 이벤트 말씀하신거죠?
:
: 폼의 외부의 영역을 마우스로 눌러도 Deactivate 이벤트는 발생되지 않는것 같습니다.
:
: KeyPress 이벤트는 잘 동작 되는데...
:
: 암튼 답변 감사합니다. 수고하세요 .^^.
:
:
: 정성훈.해미 님이 쓰신 글 :
: : ShowModal로 띄운 폼의 Deactive이벤트와 KeyPress이벤트를 이용해 보세요.
: :
: : Deactive이벤트에 Close();
: :
: : 그리고
: : KeyPress 이벤트에서 Key값이  ESC이면 Close();
: :
: :
: :
: :
: : 방태윤 님이 쓰신 글 :
: : : 안녕하세요.?
: : :
: : :
: : : 제가 하려는 작업은,..
: : :
: : : 버튼을 누르면 form 을 showmodal 로 띄어서 뭐뭐 작업을 한후 close 되면 다음 작업을 하려고 합니다.
: : :
: : : 그런데 문제는 showmodal 로 띄운 폼에 있는 ... close 버튼으로 종료를 하는 경우도 있지만,,,
: : :
: : : 제가 띄운 폼의 외부의 영역을 ... 마우스로 클릭한 경우에도 폼이 close 되게 하고자 합니다. (또는 ESC 를 누른걍우)
: : :
: : :
: : :
: : : 사실은 콤보박스 같은걸 만들려고 합니다. ▼ 를 누르면 창이 뜨고 거기에 제 맘대로 draw 하고  했으면 하는데...
: : :
: : : 정석적인 방법이 있는지요?
: : :
: : :
: : : 읽어 주셔서 감사합니다.^^.

+ -

관련 글 리스트
53058 ComboBox 또는 Popup 같은 기능의 창을 만들려면요... 방태윤 1109 2008/04/09
53070     답변주신 두분 감사합니다. 방태윤 1032 2008/04/10
53059     Re:ComboBox 또는 Popup 같은 기능의 창을 만들려면요... 정성훈.해미 1275 2008/04/09
53062         re : Deactivate 는 안되네요... 방태윤 944 2008/04/10
53063             Re:re : Deactivate 는 안되네요... 장성호 1266 2008/04/10
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.