MFC 컨트롤을 ActiveX: 이벤트
ActiveX 컨트롤 이벤트를 사용 하는 컨트롤에 무슨을 컨테이너에 알립니다.이벤트의 일반적인 예로 클릭할 때 컨트롤의 키보드 및 변경 내용을 컨트롤의 상태를 사용 하 여 입력 데이터를 포함 합니다.이러한 동작이 발생 하면 컨트롤 컨테이너에 알리는 이벤트를 발생 시킵니다.
이벤트 메시지 라고도 합니다.
두 가지 종류의 이벤트를 지 원하는 MFC: 주식 및 사용자 지정 합니다.스톡 이벤트는 해당 이벤트 클래스 COleControl 자동으로 처리 합니다.스톡 이벤트에 대 한 전체 목록을 보려면 ActiveX 컨트롤 MFC: 스톡 이벤트 추가.사용자 지정 이벤트를 컨트롤 컨테이너는 해당 컨트롤에 특정 동작이 발생할 때를 알릴 수가 있습니다.예를 들어 컨트롤의 내부 상태 또는 특정 창 메시지를 받으면 변경 됩니다.
이벤트가 올바르게 발생 시키려면 컨트롤 컨트롤 클래스는 각 컨트롤의 이벤트 관련된 이벤트가 발생할 때 호출 해야 하는 멤버 함수에 매핑해야 합니다.(이벤트 맵이라고 함)이 매핑 메커니즘 이벤트에 대 한 정보를 중앙 집중화 하 고 Visual Studio 쉽게 액세스 하 고 컨트롤의 이벤트를 조작할 수 있습니다.헤더에 있는, 다음 매크로에서이 이벤트 맵이 선언 (.H) 컨트롤 클래스 선언의 파일:
DECLARE_EVENT_MAP()
이벤트 맵이 선언 된 후 컨트롤의 구현에서 정의 되어야 합니다 (.CPP) 파일입니다.다음 코드 줄을 허용 하는 특정 이벤트를 발생 시키려면 컨트롤 이벤트 맵을 정의 합니다.
BEGIN_EVENT_MAP(CMyAxUICtrl, COleControl)
...
END_EVENT_MAP()
ActiveX 컨트롤 MFC 마법사를 사용 하 여 프로젝트를 만드는 경우 자동으로이 줄을 추가 합니다.MFC ActiveX 컨트롤 마법사를 사용 하지 않는 경우이 줄을 수동으로 추가 해야 합니다.
클래스 뷰와 클래스에서 지 원하는 스톡 이벤트를 추가할 수 있습니다 COleControl 또는 사용자 지정 이벤트를 정의 합니다.각각의 새로운 이벤트에 대해 클래스 뷰에서 자동으로 적절 한 항목 컨트롤의 이벤트 맵에 컨트롤의 추가합니다.IDL 파일입니다.
두 개의 다른 기사에서 이벤트에 자세히 설명합니다.