저는 CformView와 자식 CListCtrl 컨트롤이 있습니다. 나는 메시지 핸들러 아래 정의하여, 문제없이하여 CformView에서 Ctrl + C, Ctrl + V를 ... 같은 가속기 이벤트를 처리 할 수 상위 컨트롤의 자식 컨트롤 가속기 명령을 처리하는 방법
ON_COMMAND(ID_EDIT_COPY, &CMyFormView::OnEditCopy)
지금 내 CListCtrl 다르게이 명령을 처리 할 수 있습니다. 내가 CListCtrl 클래스에서 OnEditCopy 구현하는 대신보기 클래스에서 로직 을 구현하고 싶습니다. CListCtrl에 포커스가있을 때 CView의 액셀러레이터 이벤트를 자식 컨트롤 에 전달할 수 있습니까? 나는 다음과 같이 시도했다 :
ON_CONTROL_REFLECT(ID_EDIT_COPY, &CMyListCtrl::OnEditCopy)
그러나 그것은 작동하지 않는다.
이것은 정확히 예상 한 것입니다. 고맙습니다! – Sheen
이 경우에 OnCommand() 메서드가 어떤 역할을 수행하는지 설명하여 답변을 확장 하시겠습니까? 왜 ID_EDIT_COPY가 매우 특별해서 부모 클래스에서 메시지 디스패치 메커니즘을 수정해야합니까? – Jaywalker