Freigeben über


CMessageMap-Klasse

Diese Klasse ermöglicht den Meldungszuordnungen eines Objekts, um den Zugriff von einem anderen Objekt ist.

Wichtiger HinweisWichtig

Diese Klasse und ihre Member können in Anwendungen nicht verwendet werden, die in der Windows Runtime ausführen.

class ATL_NO_VTABLE CMessageMap

Mitglieder

82kc1c2x.collapse_all(de-de,VS.110).gifÖffentliche Methoden

Name

Description

CMessageMap::ProcessWindowMessage

Greift auf eine Meldungszuordnung in CMessageMap von abgeleiteten Klasse in.

Hinweise

CMessageMap ist eine abstrakte Basisklasse, die auf die von einem anderen Objekt kann zugegriffen werden, Meldungszuordnungen eines Objekts.Damit ein Objekt seine Meldungszuordnungen, seine Klasse muss von CMessageMap berechnen verfügbar macht.

ATL verwendet CMessageMap, um enthaltende Fenster und dynamische Meldungszuordnungsverketten zu unterstützen.Beispielsweise Klasse alle Manifestfragmenten CContainedWindow eines Objekts müssen von CMessageMap berechnen.Der folgende Code wird vom STELLEN Sie auf Beispiel aufgezeichnet.Durch CComControl berechnet die CAtlEdit-Klasse automatisch von CMessageMap.

class ATL_NO_VTABLE CAtlEdit :
   OtherInheritedClasses
   public CComControl<CAtlEdit>
   // CComControl derives from CWindowImpl, which derives from CMessageMap
{
public:
   // Declare a contained window data member
   CContainedWindow m_ctlEdit;

   // Initialize the contained window:
   // 1. Pass "Edit" to specify that the contained 
   //    window should be based on the standard 
   //    Windows Edit box
   // 2. Pass 'this' pointer to specify that CAtlEdit 
   //    contains the message map to be used for the 
   //    contained window's message processing
   // 3. Pass the identifier of the message map. '1'
   //    identifies the alternate message map declared
   //    with ALT_MSG_MAP(1)
   CAtlEdit()
      : m_ctlEdit(_T("Edit"), this, 1)
   {
      m_bWindowOnly = TRUE;
   }

// Declare the default message map, identified by '0'
BEGIN_MSG_MAP(CAtlEdit)
   MESSAGE_HANDLER(WM_CREATE, OnCreate)
   MESSAGE_HANDLER(WM_SETFOCUS, OnSetFocus)
   CHAIN_MSG_MAP(CComControl<CAtlEdit>)
// Declare an alternate message map, identified by '1'
ALT_MSG_MAP(1)
   MESSAGE_HANDLER(WM_CHAR, OnChar)
END_MSG_MAP()

Da das enthaltende Fenster, m_EditCtrl, eine Meldungszuordnung im enthaltenden Klasse verwendet, berechnet CAtlEdit von CMessageMap.

Weitere Informationen zu Meldungszuordnungen, Meldungszuordnungen finden Sie im Artikel "ATL-Fensterklassen."

Anforderungen

Header: atlwin.h

Siehe auch

Referenz

CDynamicChain-Klasse

BEGIN_MSG_MAP

ALT_MSG_MAP

Weitere Ressourcen

ATL-Klassenübersicht