Compartir a través de


Categorías de mensajes

¿Para qué tipos de mensajes se escriben controladores? Hay tres categorías principales:

  1. Mensajes de Windows

    Esto incluye principalmente esos mensajes que comienzan con el prefijo WM_ , excepto para WM_COMMAND. Los mensajes de Windows se controlan mediante ventanas y vistas. Estos mensajes suelen tener parámetros que se usan para determinar cómo controlar el mensaje.

  2. Notificaciones del control

    Se incluyen los mensajes de notificación WM_COMMAND desde los controles y otras ventanas secundarias a sus ventanas primarias. Por ejemplo, un control de edición envía a su elemento primario un mensaje WM_COMMAND que contiene el código de notificación de control EN_CHANGE cuando el usuario realiza una acción que puede modificar el texto en el control de edición. El controlador de la ventana del mensaje responde al mensaje de notificación de manera adecuada, como mediante la recuperación del texto del control.

    El marco enruta los mensajes de notificación de control como los otros mensajes WM_. Sin embargo, una excepción es el BN_CLICKED mensaje de notificación de control enviado por botones cuando el usuario hace clic en ellos. Este mensaje se trata especialmente como un mensaje de comando y se enruta como otros comandos.

  3. Mensajes de comando

    Esto incluye mensajes de notificación WM_COMMAND de objetos de interfaz de usuario: menús, botones de barra de herramientas y teclas aceleradoras. El marco procesa comandos de forma diferente de otros mensajes y se pueden controlar mediante más tipos de objetos, como se explica en Destinos de comandos.

Mensajes de Windows y mensajes de Control-Notification

Los mensajes de las categorías 1 y 2 ( mensajes de Windows y notificaciones de control) se controlan mediante ventanas: objetos de clases derivadas de la clase CWnd. Esto incluye CFrameWnd, CMDIFrameWnd, CMDIChildWnd, CView, CDialogy sus propias clases derivadas de estas clases base. Estos objetos encapsulan un elemento HWND, un identificador de una ventana de Windows.

Mensajes de comando

Los mensajes de la categoría 3 (comandos) se pueden controlar mediante una variedad más amplia de objetos: documentos, plantillas de documento y el propio objeto de aplicación, además de ventanas y vistas. Cuando un comando afecta directamente a algún objeto determinado, tiene sentido que ese objeto controle el comando. Por ejemplo, el comando Abrir del menú Archivo está asociado lógicamente a la aplicación: la aplicación abre un documento especificado al recibir el comando. Por lo tanto, el controlador del comando Open es una función miembro de la clase de aplicación. Para más información sobre los comandos y cómo se enrutan a objetos, consulte Cómo llama el marco a un controlador.

Consulte también

Mensajes y comandos en el marco