Compartir a través de


ON_COMMAND_RANGE

Use esta macro para asignar un intervalo contiguo de los id. de comando a una sola función de controlador de mensajes.

ON_COMMAND_RANGE(id1, id2, memberFxn )

Parámetros

  • id1
    Identificador de comando al principio de un intervalo contiguo de los id. del comando.

  • id2
    Identificador de comando al final de un intervalo contiguo de los id. del comando.

  • memberFxn
    El nombre de la función de controlador de mensajes a la que se asignan a los comandos.

Comentarios

El intervalo de id. comienza con id1 y finaliza con id2.

Uso ON_COMMAND_RANGE de asignar un intervalo de los id. de comando a una función miembro.Uso ON_COMMAND de asignar un único comando a una función miembro.Sólo una entrada de mapa de mensajes puede coincidir con un identificador determinada de comandoEs decir, no puede asignar un comando a más de un controlador.Para obtener más información sobre intervalos de mensaje de asignación, vea Controladores para los intervalos de mapa de mensajes.

No hay compatibilidad automático para los intervalos del mapa de mensajes, por lo que debe usar la macro personalmente.

Ejemplo

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

Requisitos

Header: afxmsg_.h

Vea también

Referencia

ON_UPDATE_COMMAND_UI_RANGE

ON_CONTROL_RANGE

ON_COMMAND

Conceptos

Macros y funciones globales de MFC