일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 카일레라서버
- 서치아이
- 카일레라
- 맞고게임
- 티스토리 초대장
- 포커게임
- 고스톱
- 게임 개발
- holdem
- 영어단어게임
- 상호링크
- 프로그램 외주
- 보드게임
- 틀린그림 찾기
- Mame32
- 게임 외주
- MAME
- 윈윈
- 윈윈전략
- 옥션해킹
- 써치아이
- 온라인게임
- 프로그램 개발
- 영어단어
- 맞고
- 판매
- 틀린그림찾기
- 홀뎀
- 포커
- 옥션소송
- Today
- Total
kyuseo의 게임 프로그래밍
WM_ACTIVATEAPP, WM_ACTIVATE, WM_SETFOCUS, WM_KILLFOCUS 을 잘 보여주는 프로그램 본문
WM_ACTIVATEAPP, WM_ACTIVATE, WM_SETFOCUS, WM_KILLFOCUS 을 잘 보여주는 프로그램
kyuseo 2007. 10. 24. 20:02개요.. |
윈도우와 컨트롤의 WM_ACTIVATEAPP, WM_ACTIVATE, WM_SETFOCUS, WM_KILLFOCUS 등의 발생시기를 잘 보여주는 프로그램입니다.
게임에서 사용자가 Alt Tab과 같은 작동을 할 경우 자신의 어플리케이션이 활성화 되었는지(Active), 활성화 되지 않은지(Inactive)에 따라서 사운드, 화면(풀스크린) 복구 작업을 하기 때문에 그 정확한 시점을 테스트 해보고자 만들어 보았습니다.
코드 |
ON_EN_SETFOCUS(IDC_EDIT1, OnSetfocusEdit1) ON_EN_KILLFOCUS(IDC_EDIT1, OnKillfocusEdit1) ON_EN_KILLFOCUS(IDC_EDIT2, OnKillfocusEdit2) ON_EN_SETFOCUS(IDC_EDIT2, OnSetfocusEdit2) ON_EN_KILLFOCUS(IDC_EDIT3, OnKillfocusEdit3) ON_EN_SETFOCUS(IDC_EDIT3, OnSetfocusEdit3) ON_WM_ACTIVATEAPP() ON_WM_ACTIVATE()
//----------- OnActivateApp void CActiveAndFocusDlg::OnActivateApp(BOOL bActive, HTASK hTask) { CDialog::OnActivateApp(bActive, hTask);
if( bActive == TRUE ) SetDlgItemText( IDC_EDIT_ACTIVEAPP, "활성화Yes" ); else SetDlgItemText( IDC_EDIT_ACTIVEAPP, "활성화No" ); }
//----------- OnActivate void CActiveAndFocusDlg::OnActivate(UINT nState, CWnd* pWndOther, BOOL bMinimized) { CDialog::OnActivate(nState, pWndOther, bMinimized);
if( nState == WA_INACTIVE ) SetDlgItemText( IDC_EDIT_ACTIVE, "nState == WA_INACTIVE" ); else if( nState == WA_ACTIVE ) SetDlgItemText( IDC_EDIT_ACTIVE, "nState == WA_ACTIVE" ); else if( nState == WA_CLICKACTIVE ) SetDlgItemText( IDC_EDIT_ACTIVE, "nState == WA_CLICKACTIVE" ); }
//----------- 버튼 void CActiveAndFocusDlg::OnSetfocusEdit1() { SetDlgItemText( IDC_EDIT1, "포커스O" ); } void CActiveAndFocusDlg::OnKillfocusEdit1() { SetDlgItemText( IDC_EDIT1, "포커스X" ); }
//----------- 버튼 void CActiveAndFocusDlg::OnSetfocusEdit2() { SetDlgItemText( IDC_EDIT2, "포커스O" ); } void CActiveAndFocusDlg::OnKillfocusEdit2() { SetDlgItemText( IDC_EDIT2, "포커스X" ); }
//----------- 버튼 void CActiveAndFocusDlg::OnSetfocusEdit3() { SetDlgItemText( IDC_EDIT3, "포커스O" ); } void CActiveAndFocusDlg::OnKillfocusEdit3() { SetDlgItemText( IDC_EDIT3, "포커스X" ); } |