Condividi tramite


ALT_MSG_MAP

Contrassegna l'inizio di una mappa messaggi alternativa.

ALT_MSG_MAP( msgMapID )

Parametri

  • msgMapID
    [in] identificatore della mappa messaggi.

Note

ATL identifica ogni mappa messaggi per un numero.La mappa messaggi predefinita (dichiarata con la macro BEGIN_MSG_MAP ) è identificata da 0.Una mappa messaggi alternativa è identificata da msgMapID.

Le mappe messaggi vengono utilizzate per elaborare i messaggi inviati a una finestra.Ad esempio, CContainedWindow consente di specificare l'identificatore di una mappa messaggi nell'oggetto contenitore.CContainedWindow::WindowProc quindi utilizza questa mappa messaggi per indirizzare i messaggi della finestra contenuta la funzione del gestore appropriato o a un'altra mappa messaggi.Per un elenco di macro che dichiarano le funzioni di gestione, vedere BEGIN_MSG_MAP.

Inizia sempre una mappa messaggi con BEGIN_MSG_MAP.È quindi possibile dichiarare le mappe messaggi alternate successive.

La macro END_MSG_MAP contrassegna la fine della mappa messaggi.Si noti che è sempre esattamente un'istanza BEGIN_MSG_MAP e END_MSG_MAP.

Per ulteriori informazioni sull'utilizzo delle mappe dei messaggi in ATL, vedere Mappe messaggi.

Esempio

Nell'esempio seguente viene illustrata la mappa messaggi predefinita e una mappa messaggi alternativa, ogni una funzione di gestione contenitore:

BEGIN_MSG_MAP(CMyOneAltClass)
   MESSAGE_HANDLER(WM_PAINT, OnPaint)
ALT_MSG_MAP(1)
   MESSAGE_HANDLER(WM_SETFOCUS, OnSetFocus)
END_MSG_MAP()

Nell'esempio riportato di seguito due mappe messaggi alternate.La mappa messaggi predefinita è vuota.

BEGIN_MSG_MAP(CMyClass)
ALT_MSG_MAP(1)
   MESSAGE_HANDLER(WM_PAINT, OnPaint)
   MESSAGE_HANDLER(WM_SETFOCUS, OnSetFocus)
ALT_MSG_MAP(2)
   MESSAGE_HANDLER(WM_CREATE, OnCreate)
END_MSG_MAP()

Requisiti

Header: atlwin.h

Vedere anche

Riferimenti

MESSAGE_HANDLER

Classe di CMessageMap

Classe di CDynamicChain

Altre risorse

Macro della mappa messaggi (ATL)

Macro ATL