MESSAGE_HANDLER

定义消息映射中的项。

MESSAGE_HANDLER( 
   msg, 
   func  
)

参数

  • msg
    [in] Windows消息。

  • func
    [in]消息处理函数的名称。

备注

MESSAGE_HANDLER 映射到Windows消息到指定的处理程序函数。

必须定义在 MESSAGE_HANDLER 宏指定的所有函数:

LRESULT MessageHandler(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled);

在 MessageHandler 调用之前,消息映射设置 bHandled 到 TRUE。 如果 MessageHandler 不完全处理消息,则应设置 bHandled 到 FALSE 指示消息需要进一步处理。

备注

BEGIN_MSG_MAP始终启动消息映射。您可以声明与 ALT_MSG_MAP的后续替换消息映射。END_MSG_MAP 宏指示消息映射的结尾。每个消息映射必须正好包含 BEGIN_MSG_MAPEND_MSG_MAP一个实例。

除了 MESSAGE_HANDLER外,还可以使用 COMMAND_HANDLERNOTIFY_HANDLER 映射 WM_COMMANDWM_NOTIFY 消息,分别。

有关使用的更多信息消息在ATL映射,请参见 消息映射

示例

class CMyBaseWindow : public CWindowImpl<CMyBaseWindow>
{
public:
   BEGIN_MSG_MAP(CMyBaseWindow)
      MESSAGE_HANDLER(WM_CREATE, OnCreate)
   END_MSG_MAP()

   // When a CMyBaseWindow object receives a WM_CREATE message, the message
   // is directed to CMyBaseWindow::OnCreate for the actual processing.
   LRESULT OnCreate(UINT /*nMsg*/, WPARAM /*wParam*/, LPARAM /*lParam*/, 
      BOOL& /*bHandled*/)
   {
      return 0;   
   }
};

要求

Header: atlwin.h

请参见

参考

MESSAGE_RANGE_HANDLER

其他资源

消息映射宏(ATL)

ATL 宏