반응형
실습예제 4 :: [Alt + F4] 키를 누르면 WM_CLOSE 메시지가 발생하고 프로그램이 종료됩니다. 유사하게 [Alt + X] 키를 누르면 프로그램이 종료되도록 예제를 작성해봅시다.
void CKeyMoveView::OnSysChar(UINT nChar, UINT nRepCnt, UINT nFlags)
{
// TODO: Add your message handler code here and/or call default
if(nChar == VK_RETURN)
AfxMessageBox(TEXT("Alt + Enter"));
else if(nChar == 's' || nChar == 'S')
AfxMessageBox(TEXT("Alt + S"));
else if(nChar == 'x' || nChar == 'X'){
SendMessage(WM_CLOSE,0,0);
}
CView::OnSysChar(nChar, nRepCnt, nFlags);
} |
위와 같이 하면 될 줄 알았는데 디버거 창이 뜨면서 충돌이라고 뜬다.
void CKeyMoveView::OnSysChar(UINT nChar, UINT nRepCnt, UINT nFlags)
{
// TODO: Add your message handler code here and/or call default
if(nChar == VK_RETURN)
AfxMessageBox(TEXT("Alt + Enter"));
else if(nChar == 's' || nChar == 'S')
AfxMessageBox(TEXT("Alt + S"));
else if(nChar == 'x' || nChar == 'X'){
AfxGetMainWnd()->PostMessage(WM_CLOSE,0,0);
}
CView::OnSysChar(nChar, nRepCnt, nFlags);
} |
이렇게 하니깐 종료는 된다. 정상적이지 않은지 띵띵 거리는게 좀 걸리네.
반응형
'C & C++ > C & C++' 카테고리의 다른 글
BOOL 과 bool 의 차이점 (0) | 2011.05.06 |
---|---|
[Tip] 외부 프로그램 실행 및 종료 (0) | 2011.05.04 |
API 주요 함수 (0) | 2011.04.29 |
사용자 정의 이벤트(Event) (0) | 2011.04.29 |
[Tip] 로그인 인증 확인 (0) | 2011.04.28 |
댓글