Compartir a través de


Mapas de mensajes (MFC)

En esta sección de referencia se hace una lista de todas las macros de asignación de mensajes y todas las CWndentradas de mapa de mensajes de CWnd junto con los prototipos correspondientes de la función miembro:

Category Descripción
ON_COMMAND Gestor de mensajes Controla los WM_COMMAND mensajes generados por las selecciones de menú del usuario o las teclas de acceso del menú.
Controladores de mensajes de notificación de ventana secundaria Controlan los mensajes de notificación de las ventanas secundarias.
WM_ Controladores de mensajes Controla WM_ los mensajes, como WM_PAINT.
Controladores de mensajes definidos por el usuario Controlan los mensajes definidos por el usuario.

(Para obtener una explicación de la terminología y las convenciones utilizadas en esta referencia, consulta Cómo utilizar la referencia cruzada del mapa de mensajes.)

Puesto que Windows es un sistema operativo orientado a mensajes, una gran parte de la programación para el entorno Windows implica el control de mensajes. Cada vez que tiene lugar un evento como una pulsación de tecla o un clic del mouse, se envía un mensaje a la aplicación, que debe controlar el evento.

La biblioteca MFC (Microsoft Foundation Class) proporciona un modelo de programación optimizado para la programación basada en mensajes. En este modelo, los "mapas de mensajes" se utilizan para designar qué funciones controlarán los distintos mensajes para una clase determinada. Los mapas de mensajes contienen una o varias macros que especifican qué mensajes se controlan mediante qué funciones. Por ejemplo, un mapa de mensajes que contiene una macro ON_COMMAND podría tener la siguiente apariencia:

BEGIN_MESSAGE_MAP(CMyDoc, CDocument)
   ON_COMMAND(ID_MYCMD, &CMyDoc::OnMyCommand)
END_MESSAGE_MAP()

La macro ON_COMMAND se utiliza para controlar los mensajes de comando generados por los menús, los botones y las teclas de aceleración. Hay macros disponibles para asignar lo siguiente:

Mensajes de Windows

  • Notificaciones del control

  • Mensajes definidos por el usuario

Mensajes de comando

  • Mensajes definidos por el usuario registrados

  • Mensajes de actualización de la interfaz de usuario

Intervalos de mensajes

  • Comandos

  • Mensajes del controlador de actualización

  • Notificaciones del control

Aunque las macros de mapa de mensajes son importantes, en general no es necesario utilizarlas directamente. Esto se debe a que la ventana Class Wizard crea automáticamente las entradas del mapa de mensajes en los archivos de código fuente cuando se utiliza para asociar los mensajes con las funciones de control de mensajes. Siempre que desees editar o agregar una entrada de mapa de mensajes, puedes utilizar la ventana Propiedades.

Nota:

La ventana Class Wizard no admite intervalos de mapa de mensajes. Debe escribir estas entradas de mapa de mensajes manualmente.

Sin embargo, los mapas de mensajes son una parte importante de la biblioteca MFC (Microsoft Foundation Class). Debe entender lo que hacen y consultar la documentación que se proporciona sobre ellos.

Consulte también

Estructuras, estilos, devoluciones de llamada y mapas de mensajes