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