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 mensaje- mapa puede coincidir con un identificador determinada de comando Es 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 Mensaje- mapa.

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 variables globales de MFC