Udostępnij za pośrednictwem


ON_COMMAND_RANGE

To makro umożliwia mapowanie ciągły zakres identyfikatorów poleceń do funkcji obsługi pojedynczej wiadomości.

ON_COMMAND_RANGE(id1, id2, memberFxn )

Parametry

  • ID-1
    Identyfikator polecenia na początku ciągły zakres identyfikatorów poleceń.

  • id2
    Identyfikator polecenia pod koniec ciągły zakres identyfikatorów poleceń.

  • memberFxn
    Nazwa funkcji obsługi wiadomości, do którego są mapowane poleceń.

Uwagi

Zakres identyfikatorów zaczyna się od ID-1 i kończy się na id2.

Użycie ON_COMMAND_RANGE do mapowania zakres identyfikatorów poleceń funkcji jednego członka.Użycie ON_COMMAND do mapowania jednego polecenia funkcji składowej.Tylko jeden wpis mapy wiadomości można dopasować identyfikatora dla danego polecenia.Oznacza to, że nie można mapować polecenia na więcej niż jeden program obsługi.Więcej informacji na temat mapowania wiadomości zakresów, zobacz temat obsługi wiadomości-Mapa zakresów.

Istnieje nie automatycznego wsparcia dla zakresów mapę wiadomości, więc możesz makra należy umieścić.

Przykład

// 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);
}

Wymagania

Nagłówek: afxmsg_.h

Zobacz też

Informacje

ON_UPDATE_COMMAND_UI_RANGE

ON_CONTROL_RANGE

ON_COMMAND

Koncepcje

Makra i funkcje globalne MFC