이벤트 맵

컨트롤 (컨트롤 개발자에 의해 결정) 일부 동작 (예: 키 입력, 마우스 클릭 또는 컨트롤의 상태 변경) 일어난 컨테이너가 통지 하고자 하는 때마다 이벤트 발생 함수를 호출 합니다. 이 기능은 몇 가지 중요 한 작업 관련 이벤트에 의해 발생 하는 컨트롤 컨테이너를 알립니다.

마이크로소프트 파운데이션 클래스 라이브러리는 이벤트를 발생 시키는 최적화 된 프로그래밍 모델을 제공 합니다. 이 모델에서는 "이벤트 지도" 기능을 하는 불 특정 컨트롤에 대 한 이벤트를 지정 하는 데 사용 됩니다. 각 이벤트에 대 한 매크로 포함 하는 이벤트 지도. 예를 들어, 스톡 Click 이벤트를 발생 시키는 이벤트 맵을 비슷합니다.:

BEGIN_EVENT_MAP (CSampleCtrl, COleControl)
   //{{AFX_EVENT_MAP(CSampleCtrl)
   EVENT_STOCK_CLICK)
   //}}AFX_EVENT_MAP
END_EVENT_MAP()

EVENT_STOCK_CLICK 매크로 컨트롤 마우스 클릭이 감지 될 때마다 주식 Click 이벤트 화재를 나타냅니다. 다른 스톡 이벤트의 자세한 목록은 다음 웹 사이트를 참조 하십시오. 문서 ActiveX 컨트롤: 이벤트 Visual c + + 프로그래머 가이드에서. 매크로 사용자 지정 이벤트를 나타내기 위해 사용할 수 있습니다.

이벤트 맵 매크로 중요 하지만 일반적으로 하지 않습니다 삽입 직접. Classwizard는 이벤트 이벤트 발생 기능 연관 사용할 때 자동으로 소스 파일의 이벤트 맵 항목 만듭니다 때문입니다. 이벤트 맵 항목을 추가 하거나 편집 하려면 언제 든 지 마법사를 사용할 수 있습니다.

이벤트 지도 지원 하기 위해 MFC 다음 매크로 제공 합니다.:

이벤트 맵 선언 및 경계

DECLARE_EVENT_MAP 이벤트 (클래스 선언에 사용 해야 합니다) 이벤트 발생 함수에 매핑할 이벤트 맵을 클래스에서 사용할 수 것입니다 선언。
BEGIN_EVENT_MAP (클래스 구현에서 사용 해야 합니다) 이벤트 맵 정의 시작。
END_EVENT_MAP (클래스 구현에서 사용 해야 합니다) 이벤트 맵 정의 종료。

이벤트 매핑 매크로

EVENT_CUSTOM 이벤트 발생 함수는 지정 된 이벤트 발생을 나타냅니다.
EVENT_CUSTOM_ID 이벤트 발생 함수는 지정 된 디스패치 ID와 함께 지정 된 이벤트 발생을 나타냅니다.

메시지 매핑 매크로

ON_OLEVERB OLE 컨트롤에 의해 처리 하는 사용자 지정 동사를 나타냅니다.
ON_STDOLEVERB OLE 컨트롤의 표준 동사 매핑을 재정의합니다。

Index