1999.4.25 조경민

여러컨트롤의 포커스를 바꾸는 방법
> MagicWord에서 썼었다.


BOOL CMagicWordView::PreTranslateMessage(MSG* pMsg)
{
        // TODO: Add your specialized code here and/or call the base class
        
        CRect rect;
        GetClientRect(&rect);
        if(rect.PtInRect( pMsg->pt ))
        {                                
                if(pMsg->message==WM_KEYDOWN)
                {
                        if( ((CMagicWordApp*)AfxGetApp())->m_IsAppStt==1) // 파일을 열어서 준비가 된 상태라면
                        {
                                SetTimer(IDC_TIMER,1000,NULL);
                                ((CMagicWordApp*)AfxGetApp())->m_IsAppStt=2; // 게임의 시작

                        }
                        
                        switch(pMsg->wParam)
                        {
                        case 13:
                        case VK_DOWN:
                                if(::IsWindow(GetFocus()->GetWindow(GW_HWNDNEXT)->GetSafeHwnd()))
                                {
                                        CWnd* pWnd;
                                        pWnd = (CEdit*)(GetFocus()->GetWindow(GW_HWNDNEXT));
                                        pWnd->SetFocus();
                                        
                                        OnVScroll(SB_LINEDOWN,40,NULL);
                                }
                                break;                
                        case VK_UP:
                                if(::IsWindow(GetFocus()->GetWindow(GW_HWNDPREV)->GetSafeHwnd()))
                                {
                                        CWnd* pWnd;
                                        pWnd = (CEdit*)(GetFocus()->GetWindow(GW_HWNDPREV));
                                        pWnd->SetFocus();
                                        
                                        OnVScroll(SB_LINEUP,40,NULL);
                                }
                                break;
                        }
                }
        }
        
        return CScrollView::PreTranslateMessage(pMsg);
}

'KB > MFC/Win32' 카테고리의 다른 글

템플리트 in DLL  (0) 2004.03.19
간단 콘솔제어  (0) 2004.03.19
[ActiveX] 엑티브 컨트롤 웹 페이지 만들기  (0) 2004.03.19
[mfc] 에디트 컨트롤 fix 폰트 쓰기  (0) 2004.03.19
[mfc] 런타임 클래스  (0) 2004.03.19

+ Recent posts