Compartir a través de


Definir un controlador de mensajes para un mensaje reflejado

Una vez que hayas creado una nueva clase de control MFC, puedes definir controladores de mensajes para ella. Los controladores de mensajes reflejados permiten que la clase de control controle sus propios mensajes antes de que el elemento primario reciba el mensaje. Puedes usar la función CWnd::SendMessage de MFC para enviar mensajes desde el control a una ventana primaria.

Con esta funcionalidad podrías crear, por ejemplo, un cuadro de lista que se volverá a dibujar en lugar de confiar en la ventana primaria para hacerlo (propietario dibujado). Para obtener más información en mensajes reflejados, consulta Control de mensajes reflejados.

Para crear un control ActiveX con la misma funcionalidad, debes crear un proyecto para el control ActiveX.

Nota:

No se puede agregar un mensaje reflejado (OCM_Message) para un control ActiveX mediante el Asistente para clases, como se describe a continuación. Debes agregar estos mensajes manualmente.

Para definir un controlador de mensajes para un mensaje reflejado desde el Asistente para clases

  1. Agrega un control, como una lista, un control de barra de herramientas, una barra de herramientas o un control de árbol, al proyecto MFC.

  2. En la Vista de clases, haz clic en el nombre de la clase de control.

  3. En el Asistente para clases, el nombre de la clase de control aparece en la lista Nombre de clase.

  4. Haz clic en la pestaña Mensajes para mostrar los mensajes de Windows disponibles para agregar al control.

  5. Selecciona el mensaje reflejado para el que quieres definir un controlador. Los mensajes reflejados se marcan con un signo igual (=).

  6. Haz clic en la celda de la columna derecha del Asistente para clases para mostrar el nombre sugerido del controlador como <agregar>HandlerName. (Por ejemplo, el controlador de mensajes =WM_CTLCOLOR sugiere <agregar>CtlColor).

  7. Haz clic en el nombre sugerido para aceptar. El controlador se agrega a tu proyecto.

  8. Para editar o eliminar un controlador de mensajes, repite los pasos del 4 al 7. Haz clic en la celda que contiene el nombre del controlador para editar o eliminar y haz clic en la tarea adecuada.

Consulte también

Asignación de mensajes a funciones
Agregar funcionalidad con los Asistentes para código
Agregar una clase
Agregar una función miembro
Agregar una variable miembro
Reemplazar una función virtual
Adición de un controlador de mensajes MFC
Navegar por la estructura de clases