정보: 액셀러레이터 함께 MFC 모덜리스 대화 상자 사용

기술 자료 번역 기술 자료 번역
기술 자료: 117500 - 이 문서가 적용되는 제품 보기.
이 문서가 보관되었습니다. "그대로" 제공되었으며, 업데이트가 되지 않을 것입니다.
모두 확대 | 모두 축소

요약

모덜리스 대화 상자를 사용하여 액셀러레이터 키를 사용하려면 CDialog 파생 클래스에 PreTranslateMessage () 함수를 재정의하십시오.

추가 정보

모덜리스 대화 상자를 사용하여 액셀러레이터 키를 사용하려면 다음과 같이 하십시오.

  1. 모덜리스 대화 상자를 만듭니다. 자세한 내용은 Microsoft 기술 자료의 다음 문서를 참조하십시오.
    103788MFC 라이브러리 모덜리스 대화 상자 만들기
  2. 이 샘플 코드의 코드를 위에 나열된 파일을 삽입할:
       // .h file with your derived CDialog class.
       class CModeless : public CDialog
       {
          .
        public:
          virtual BOOL PreTranslateMessage(MSG*);
          .
       };
    
       //.cpp file.
       BOOL CModeless::PreTranslateMessage(MSG* pMsg)
       {
          HACCEL hAccel =
          ((CMainFrame*)AfxGetApp()->m_pMainWnd)->GetAccelTable();
          if(!(hAccel &&
               ::TranslateAccelerator(AfxGetApp()->m_pMainWnd->m_hWnd, hAccel,
                                      pMsg)))
               return CDialog::PreTranslateMessage(pMsg);
          else
             return TRUE;
       }
    
       // Mainfrm.h file, where CMainFrame is the main window class.
       HACCEL CMainFrame::GetAccelTable() { return m_hAccelTable; }
    						
  3. 해당 액셀러레이터 키를 App Studio 또는 Visual C++ 32 비트 버전, 버전 4.0 프로젝트 영역에서 리소스 뷰를 만듭니다. 해당 액셀러레이터 키를 IDR_MAINFRAME 액셀러레이터 키 테이블에 있어야 합니다. 또한 컨트롤 또는 메뉴 항목을 상호 관련된 동일한 ID가 있어야 합니다.

속성

기술 자료: 117500 - 마지막 검토: 2014년 1월 29일 수요일 - 수정: 3.1
본 문서의 정보는 다음의 제품에 적용됩니다.
  • Microsoft Foundation Class Library 4.2?을(를) 다음과 함께 사용했을 때
    • Microsoft Visual C++ 1.0 Professional Edition
    • Microsoft Visual C++ 1.5 Professional Edition
    • Microsoft Visual C++ 1.51
    • Microsoft Visual C++ 1.52 Professional Edition
    • Microsoft Visual C++ 1.0 Professional Edition
    • Microsoft Visual C++ 2.0 Professional Edition
    • Microsoft Visual C++ 2.1
    • Microsoft Visual C++ 4.0 Standard Edition
키워드:?
kbnosurvey kbarchive kbmt kbacceleratorkey kbarchitecture kbdlg kbinfo kbkeyaccel kbuidesign KB117500 KbMtko
기계 번역된 문서
중요: 본 문서는 전문 번역가가 번역한 것이 아니라 Microsoft 기계 번역 소프트웨어로 번역한 것입니다. Microsoft는 번역가가 번역한 문서 및 기계 번역된 문서를 모두 제공하므로 Microsoft 기술 자료에 있는 모든 문서를 한글로 접할 수 있습니다. 그러나 기계 번역 문서가 항상 완벽한 것은 아닙니다. 따라서 기계 번역 문서에는 마치 외국인이 한국어로 말할 때 실수를 하는 것처럼 어휘, 구문 또는 문법에 오류가 있을 수 있습니다. Microsoft는 내용상의 오역 또는 Microsoft 고객이 이러한 오역을 사용함으로써 발생하는 부 정확성, 오류 또는 손해에 대해 책임을 지지 않습니다. Microsoft는 이러한 문제를 해결하기 위해 기계 번역 소프트웨어를 자주 업데이트하고 있습니다.

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com