Freigeben über


ON_COMMAND_RANGE

Verwenden Sie dieses Makro, um einem zusammenhängenden Bereich von Befehls-IDs zu einer einzelnen Meldungshandlerfunktion zuzuordnen.

ON_COMMAND_RANGE(id1, id2, memberFxn )

Parameter

  • id1
    Befehls-ID am Anfang eines zusammenhängenden Bereich von Befehls-IDs.

  • id2
    Befehls-ID am Ende eines Bereichs zusammenhängenden von Befehls-IDs.

  • memberFxn
    Der Name der Meldungshandlerfunktion, zu der die Befehle zugeordnet werden.

Hinweise

Der Bereich von ID-Anfängen mit id1 aus und endet mit id2.

Verwenden Sie ON_COMMAND_RANGE, um einen Bereich von Befehls-IDs zur einköpfigen Funktion zuordnen. Verwenden Sie ON_COMMAND, um einem einzigen Befehl einer Memberfunktion zuzuordnen. Nur ein Eintrag in der Meldungszuordnung kann eine angegebene Befehl ID übereinstimmen Das heißt, Sie können einem Befehl nicht auf mehrere einen Handler zuordnen. Weitere Informationen über Zuordnungsmeldungsbereiche, finden Sie unter Handler für Meldungszuordnungs-Bereiche.

Es gibt keine automatische Unterstützung für Meldungszuordnungsbereiche, müssen Sie das Makro speichern.

Beispiel

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

Anforderungen

Header: afxmsg_.h

Siehe auch

Referenz

ON_UPDATE_COMMAND_UI_RANGE

ON_CONTROL_RANGE

ON_COMMAND

Konzepte

MFC-Makros, globale Funktionen und globale Variablen