cDynamicChain をクラスします。
CDynamicChainは、実行時に、別のオブジェクトのメッセージ マップに送信される Windows メッセージを有効にするメッセージ マップのコレクションを管理します。
メッセージ マップの動的チェインをサポートを追加するには、次を操作します。:
あなたのクラスは次のとおり定義されますたとえば、:
cMyWindow クラス: 公共 CDynamicChain.{パブリック。特価;...BEGIN_MSG_MAP(CMyWindow)割り当てます (WM_PAINT、OnPaint)割り当てます (WM_SETFOCUS、OnSetFocus)・ デフォルトに動的にチェーン・ メッセージ マップに別のオブジェクトCHAIN_MSG_MAP_DYNAMIC(1313)//'1313' には、オブジェクトを識別します。//とされるメッセージ マップ//連鎖します。'1313' が定義されています。・ ・ SetChainEntry 法END_MSG_MAP()LRESULT OnPaint(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled){ ... }LRESULT OnSetFocus(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled){ ... }};
クライアントを呼び出してください。CMyWindow::SetChainEntry
・ myCtl は CMyWindow オブジェクトmyCtl.SetChainEntry (1313、amp; chainedObj)(&A);
どこ chainedObj チェーンのオブジェクトであり、 CMessageMapから派生したクラスのインスタンスです。今場合、 myCtl によって処理されないメッセージ OnPaint または OnSetFocus 、ウィンドウ プロシージャがメッセージに指示 chainedObj の既定のメッセージ マップ。
メッセージ マップのチェインの詳細については、「ATL ウィンドウ クラス」の記事でのメッセージ マップを参照してください。
#include lt;atlwin.h>
参照特価;CWindowImpl(&N)