ON_COMMAND_RANGE
이 매크로 사용 하면 연속 명령 Id 범위를 단일 메시지 처리기 함수에 매핑할 수 있습니다.
ON_COMMAND_RANGE(id1, id2, memberFxn )
매개 변수
번호 1
명령 Id 연속 된 범위의 끝 명령 ID입니다.id2
명령 Id 연속 된 범위의 끝 명령 ID입니다.memberFxn
명령이 매핑되는 메시지 처리기 함수의 이름입니다.
설명
Id 범위 시작 번호 1 하 여 끝나는 id2.
사용 ON_COMMAND_RANGE 멤버 함수에 명령 Id의 범위를 매핑할 수 있습니다.사용 ON_COMMAND 단일 명령 멤버 함수에 매핑할 수 있습니다.지정 된 명령 ID가 하나의 메시지 맵 엔트리를 일치 시킬 수 있습니다.즉, 둘 이상의 처리기에 명령을 매핑할 수 없습니다.매핑 메시지 범위에 대 한 자세한 내용은 메시지 맵 범위에 대 한 처리기.
메시지 맵 범위를 지원 하지 않습니다 자동 없으므로 매크로 직접 배치 해야 합니다.
예제
// The code fragment below shows how to use ON_COMMAND_RANGE macro
// to map a contiguous range of command IDs to a single message
// handler function (i.e. OnRangeCmds() in the sample below). In
// addition, it also shows how to use CheckMenuRadioItem() to check a
// selected menu item and makes it a radio item.
BEGIN_MESSAGE_MAP(CChildFrame, CMDIChildWnd)
ON_COMMAND_RANGE(ID_COMMAND_RANGECMD1, ID_COMMAND_RANGECMD3, &CChildFrame::OnRangeCmds)
END_MESSAGE_MAP()
void CChildFrame::OnRangeCmds(UINT nID)
{
CMenu* mmenu = AfxGetMainWnd()->GetMenu();
CMenu* submenu = mmenu->GetSubMenu(5);
submenu->CheckMenuRadioItem(ID_COMMAND_RANGECMD1, ID_COMMAND_RANGECMD3,
nID, MF_BYCOMMAND);
}
요구 사항
헤더: afxmsg_.h