2013-07-03 75 views
1

모달 대화 상자가 활성화되어있을 때 주 응용 프로그램 창에서 WM_CLOSE 이벤트를 감지 할 수 있습니까? 그렇지 않으면 대화 상자의 이벤트 처리기에서 WM_CLOSE 이벤트를 감지하지 못하기 때문에 WM_CLOSE 이벤트를 감지 할 수있는 방법이 있습니까?모달 대화 상자가 활성화되어있을 때 주 응용 프로그램 윈도우에서 WM_CLOSE 이벤트를 감지합니까?

이 문제를 직접 관찰하려면 메모장의 '정보'메뉴를 연 다음 작업 표시 줄의 메모장 아이콘을 마우스 오른쪽 버튼으로 클릭하고 '창 닫기'옵션을 선택하면 아무 효과가 없습니다.

누군가 모달 창이 활성화되어있을 때 응용 프로그램에 대한 WM_CLOSE 이벤트를 잡는 방법을 알고 있습니까?

+0

사용하지 않는 동안 아무 것도 전송되지 않는다고 생각합니다. – chris

+0

가능한 [WM \ _QUIT 무시 Windows MessageBox] 중복 (http://stackoverflow.com/questions/17427103/windows-messagebox-ignoring-wm-quit) –

답변

2

작업 표시 줄에서 응용 프로그램의 아이콘을 마우스 오른쪽 버튼으로 클릭하여 "닫기"를 선택하면 WM_CLOSE이 전송됩니다.

응용 프로그램의 기본 창이 이 SC_CLOSE으로 설정된 WM_SYSCOMMAND으로 전송됩니다.

이 "기능"을 악용하는 방법에 대한 예제는 see my other answer on this here을 참조하십시오.