天天看點

MFC消息映射定義

 #define DECLARE_MESSAGE_MAP() /

private: /

 static const AFX_MSGMAP_ENTRY _messageEntries[]; /

protected: /

 static AFX_DATA const AFX_MSGMAP messageMap; /

 static const AFX_MSGMAP* PASCAL _GetBaseMessageMap(); /

 virtual const AFX_MSGMAP* GetMessageMap() const; /

#else

#define DECLARE_MESSAGE_MAP() /

private: /

 static const AFX_MSGMAP_ENTRY _messageEntries[]; /

protected: /

 static AFX_DATA const AFX_MSGMAP messageMap; /

 virtual const AFX_MSGMAP* GetMessageMap() const; /

#endif

#ifdef _AFXDLL

#define BEGIN_MESSAGE_MAP(theClass, baseClass) /

 const AFX_MSGMAP* PASCAL theClass::_GetBaseMessageMap() /

  { return &baseClass::messageMap; } /

 const AFX_MSGMAP* theClass::GetMessageMap() const /

  { return &theClass::messageMap; } /

 AFX_COMDAT AFX_DATADEF const AFX_MSGMAP theClass::messageMap = /

 { &theClass::_GetBaseMessageMap, &theClass::_messageEntries[0] }; /

 AFX_COMDAT const AFX_MSGMAP_ENTRY theClass::_messageEntries[] = /

 { /

#else

#define BEGIN_MESSAGE_MAP(theClass, baseClass) /

 const AFX_MSGMAP* theClass::GetMessageMap() const /

  { return &theClass::messageMap; } /

 AFX_COMDAT AFX_DATADEF const AFX_MSGMAP theClass::messageMap = /

 { &baseClass::messageMap, &theClass::_messageEntries[0] }; /

 AFX_COMDAT const AFX_MSGMAP_ENTRY theClass::_messageEntries[] = /

 { /

#endif

#define END_MESSAGE_MAP() /

  {0, 0, 0, 0, AfxSig_end, (AFX_PMSG)0 } /

 }; /