En MFC de VC++, ¿qué efecto tiene la macro entre BEGIN_MESSAGE_MAP() y END_MESSAGE_MAP() en la asignación de mensajes, como se muestra a continuación?
Estas dos macros representan el principio y el final del mapeo de mensajes de esta clase. La definición de macro en el medio define todo el mapeo de mensajes de esta clase.
El afx_msg void OnPaint() anterior simplemente declara que la función OnPaint() es un controlador de mensajes, seguido de la definición de la función OnPaint(), pero la definición de la función no se ejecutará por separado aquí. La macro ON_WM_PAINT() es un mapa de mensajes del sistema que le indica al sistema que llame a la función ON_WAINT() cuando ocurre un mensaje WM_PAINT. Sin esta oración, la cola de mensajes que recibe el mensaje WM_PAINT no llamará a su función OnPaint() Incluso si declara y define OnPaint(), ahora que comprende su función, puede eliminar ON_WM_PAINT() y luego Ejecutar para ver. si se ejecuta la función OnPaint().
Lo mismo ocurre con ON_WM_LBUTTONDOWN(), que establece una relación de mapeo entre mensajes y funciones de procesamiento de mensajes~