Aracılığıyla paylaş


CMessageMap sınıfı

Bu sınıf, bir nesnenin ileti başka bir nesne tarafından erişimi olmasını eşler sağlar.

Önemli notÖnemli

Bu sınıf ve üyeleri, Windows çalışma zamanında yürütmek uygulamalarda kullanılamaz.

class ATL_NO_VTABLE CMessageMap

Üyeler

82kc1c2x.collapse_all(tr-tr,VS.110).gifPublic yöntemler

Ad

Description

CMessageMap::ProcessWindowMessage

Erişen bir ileti harita CMessageMap-türetilmiş sınıf.

Notlar

CMessageMapbaşka bir nesne tarafından erişilecek nesnenin ileti verir bir soyut temel sınıf eşlemeleri olur.Kendi ileti harita göstermek bir nesne için sırayla karşı sınıfındaki türetilmelidir CMessageMap.

atl kullanan CMessageMap yer alan destek windows ve dinamik ileti eşleme zincirleme.Örneğin, herhangi bir sınıf içeren bir CContainedWindow gereken nesne türetmek CMessageMap.Aşağıdaki kodda alınır SUBEDIT örnek.Üzerinden CComControl, CAtlEdit sınıfı otomatik olarak türeyen 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()

Çünkü içerdiği pencere m_EditCtrl, ileti eşleme içeren sınıfında kullanacağı CAtlEdit türetildiği CMessageMap.

İleti haritalar hakkında daha fazla bilgi için bkz: İleti eşler makalede "atl pencere sınıflarına."

Gereksinimler

Başlık: atlwin.h

Ayrıca bkz.

Başvuru

CDynamicChain sınıfı

BEGIN_MSG_MAP

ALT_MSG_MAP

Diğer Kaynaklar

atl sınıfına genel bakış