CHAIN_MSG_MAP ( theChainClass )
Parametri
theChainClass
[in] Il nome della classe base che contiene la mappa dei messaggi.
Osservazioni
Definisce una voce in una mappa messaggi. CHAIN_MSG_MAP indirizza i messaggi di mappa di messaggi predefinita della classe base (dichiarata con BEGIN_MSG_MAP). Per dirigere i messaggi alla mappa di messaggi alternativo della classe base (dichiarata con ALT_MSG_MAP), utilizzare CHAIN_MSG_MAP_ALT.
Ad esempio:
classe CMyClass: pubblico CMyBaseClass,...
{
pubblica:
...
BEGI&N_MSG_MAP(CMyClass)
nbsp; MESSAGE_HANDLER (WM_PAINT, OnPaint)
/ / catena alla mappa messaggi predefiniti in CMyBaseClass
CHAIN_MSG_MAP(CMyBaseClass)
ALT_MSG_MAP(1)
/ / catena alla mappa messaggi predefiniti in CMyBaseClass
CHAIN_MSG_MAP(CMyBaseClass)
ALT_MSG_MAP(2)
MESSAGE_HANDLER (WM_CHAR, OnChar)
/ / catena alla mappa messaggi alternativa in CMyBaseClass
CHAIN_MSG_MAP_ALT (CMyBaseClass, 1)
END_MSG_MAP()
...
}
In questo esempio viene illustrato quanto segue:
CMyClass di mappa messaggi predefinita e OnPaint fa handle di un messaggio, il messaggio è diretto a CMyBaseClass della mappa messaggi predefinita per l'elaborazione.CMyClass , tutti i messaggi vengono indirizzati a CMyBaseClass della mappa messaggi predefinita.CMyClass della mappa secondo messaggio alternativo e OnChar fa handle di un messaggio, il messaggio è diretto verso la mappa di messaggio alternativo specificato in CMyBaseClass . CMyBaseClass deve avere dichiarato questo messaggio mappa conALT_MSG_MAP(1).&Notanbsp; Iniziare sempre una mappa messaggi con BEGIN_MSG_MAP. È possibile dichiarare le mappe successivo messaggio alternativo con ALT_MSG_MAP. La macro END_MSG_MAP segna la fine della mappa messaggi. Ogni mappa dei messaggi deve avere esattamente un'istanza di BEGIN_MSG_MAP ed END_MSG_MAP.
Per ulteriori informazioni sull'utilizzo di mappe messaggi in ATL, vedere Mappe messaggio nell'articolo "Classi finestra ATL."
Vedi anche
CHAIN_MSG_MAP_MEMBER, CHAIN_MSG_MAP_DYNAMIC, MESSAGE_HANDLER