Condividi tramite


Classe di CMessageMap

Questa classe consente delle mappe dei messaggi di un oggetto siano di accesso da un altro oggetto.

Nota importanteImportante

Questa classe e i relativi membri non possono essere utilizzati nelle applicazioni eseguite in Windows Runtime.

class ATL_NO_VTABLE CMessageMap

Membri

82kc1c2x.collapse_all(it-it,VS.110).gifMetodi pubblici

Nome

Descrizione

CMessageMap::ProcessWindowMessage

Accede a una mappa messaggi in CMessageMapclasse derivata da.

Note

CMessageMap è una classe base astratta che consente le mappe messaggi di un oggetto per accedere da un altro oggetto.Affinché un oggetto di esporre le mappe messaggi, la classe deve derivare da CMessageMap.

ATL utilizza CMessageMap per supportare le finestre contenute e concatenare dinamico della mappa messaggi.Ad esempio, qualsiasi classe contenere un oggetto CContainedWindow derivino da CMessageMap.Il codice seguente viene ricavato dall'esempio Esempio SUBEDIT.Con CComControl, la classe CAtlEdit automaticamente deriva da 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()

Poiché la finestra contenuto, m_EditCtrl, utilizzerà una mappa messaggi nella classe contenitore, CAtlEdit deriva da CMessageMap.

Per ulteriori informazioni sulle mappe messaggi, vedere Mappe messaggi nell'articolo "classi di finestre di ATL."

Requisiti

Header: atlwin.h

Vedere anche

Riferimenti

Classe di CDynamicChain

BEGIN_MSG_MAP

ALT_MSG_MAP

Altre risorse

I cenni preliminari sulle classi ATL