CMessageMap

sınıf CMessageMap

CMessageMap , başka bir nesne tarafından erişilecek nesnenin mesajı veren bir soyut temel sınıf eşler olduğunu. Amacıyla kendi ileti haritalar sergilemek için bir nesne, kendi sınıfında CMessageMap türetilmelidir.

Atl desteği bulunan windows ve dinamik iletisi göster zincirleme için CMessageMap kullanır. Örneğin, bir CContainedWindow nesnesi içeren herhangi bir sınıf CMessageMaptüretilmelidir. Aşağıdaki kodu alınır SUBEDIT örnek. Üzerinden CComControl, CAtlEdit sınıfı otomatik olarak CMessageMap türer.

cAtlEdit sınıfı: Genel CComControllt;CAtlEdit >,...
               / / CComControl CWindowImpl türeyen
               / / CMessageMap türetir
{
public:
   / / Kapsanan penceresinde veri üyesi ilan
   CContainedWindow m_EditCtrl;

/ / Kapsanan penceresi başlatın:
   // 1. Belirtmek için "Düzenle" geçmek içerdiği / / pencere standardına dayalı / / Windows düzenleme kutusu
   // 2. Belirtmek için 'Bu' işaretçi geçmek, CAtlEdit / / için kullanılacak iletiyi göster içerir / / kapsanan penceresinin ileti işleme
   // 3. İletiyi göster tanıtıcısı geçmektedir. İçinde
   / / Bu durumda, ileti göster '1' tanımlar.
   / / alt_msg_map(1) ile ilan
   CAtlEdit(): m_EditCtrl(_T("EDIT"), bu, 1)
   {
      m_bWindowOnly = true;
   }

/ / İlan varsayılan ileti göster
   BEGIN_MSG_MAP(CAtlEdit)
      message_handler (WM_PAINT, OnPaint)
      ...
   / / Bir başka mesajı göster ilan
   / / '1' tanımlanan
   ALT_MSG_MAP(1)
      message_handler (wm_char, OnChar)
   END_MSG_MAP()

...
};

Çünkü içerdiği penceresinde, m_EditCtrl , bir ileti harita-ecek kullanma içeren sınıf, CAtlEdit CMessageMap türetilmiştir.

İleti Haritalar hakkında daha fazla bilgi için bkz: makalede "atl pencere sınıflarını." İletisi haritalar

# include lt;atlwin.h>

Sınıf üyeleri

Ayrıca bkz:nbsp;CDynamicChain, BEGI&N_MSG_MAP, alt_msg_map

Index