Partilhar via


Classe de CMessageMap

Esta classe permite que os mapeamentos da mensagem de um objeto sejam acesso por outro objeto.

Observação importanteImportante

Essa classe e seus membros não podem ser usados em aplicativos executados em tempo de execução do windows.

class ATL_NO_VTABLE CMessageMap

Membros

82kc1c2x.collapse_all(pt-br,VS.110).gifMétodos públicos

Nome

Descrição

CMessageMap::ProcessWindowMessage

Acessa um mapa de CMessageMap- classe derivada de mensagem.

Comentários

CMessageMap é uma classe base abstrata que permite que os mapeamentos da mensagem de um objeto sejam acessados por outro objeto.Para que um objeto expõe seus mapeamentos de mensagem, a classe deve derivar de CMessageMap.

Usos CMessageMap suportar o windows contidas e dinâmico mensagem de ATL mapeiam encadear.Por exemplo, qualquer classe a contendo um objeto de CContainedWindow devem derivar de CMessageMap.O código a seguir é extraído do exemplo de REVISAR .Com CComControl, a classe de CAtlEdit automaticamente é derivada de 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()

Porque a janela, contida m_EditCtrl, usará um mapa de mensagem a classe continente, CAtlEdit deriva de CMessageMap.

Para obter mais informações sobre mapas de mensagem, consulte Mapas de mensagem no artigo “classes de janela ATL”.

Requisitos

Cabeçalho: atlwin.h

Consulte também

Referência

Classe de CDynamicChain

BEGIN_MSG_MAP

ALT_MSG_MAP

Outros recursos

Visão geral da classe de ATL