CDynamicChain

classe CDynamicChain

CDynamicChain gère une collection de cartes de message, permettant à un message Windows doit être adressée, au moment de l'exécution de la carte de l'objet un autre message.

Pour ajouter le support de chaînage dynamique des cartes message, procédez comme suit:

Par exemple, supposons que votre classe est définie comme suit:

class CMyWindow : public CDynamicChain,...
{
public :
 nbsp ; ...

BEGIN_MSG_MAP(CMyWindow)
      MESSAGE_HANDLER (WM_PAINT, OnPaint)
      MESSAGE_HANDLER (WM_SETFOCUS, OnSetFocus)
      / / la dynamique de la chaîne de la valeur par défaut
      / / la carte dans un autre objet de message
      CHAIN_MSG_MAP_DYNAMIC(1313)
                / / « 1313 » identifie l'objet
                / / et la table des messages qui est
                / / enchaînés à. « 1313 » est défini
                / / via la méthode SetChainEntry
   END_MSG_MAP()

LRESULT OnPaint(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled)
   { ... }

LRESULT OnSetFocus(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled)
   { ... }

};

Le client appelle ensuiteCMyWindow::SetChainEntry

/ / myCtl est un objet CMyWindow
myCtl.SetCh&ainEntry (1313, amp ; chainedObj);

chainedObj est l'objet enchaîné et est une instance d'une classe dérivée de CMessageMap. Maintenant, si myCtl reçoit un message qui n'est pas géré par OnPaint ou OnSetFocus , la procédure de fenêtre dirige le message chainedObj de carte de message par défaut.

Pour plus d'informations sur la carte message chaînage, voir Cartes Message dans l'article « Classes de fenêtre ATL. »

# include lt;atlwin.h>

Membres de classe

Voir aussi  ;CWindowImpl

Index