CDynamicChain

клас CDynamicChain

CDynamicChain керує набором карт повідомлення, що дозволить Windows повідомлення буде направлено, під час виконання, до іншого об'єкта повідомлення карти.

Щоб додати підтримку для динамічних ланцюжка карт повідомлення, виконайте такі дії:

Наприклад, припустимо, що ваш клас визначається наступним чином:

клас CMyWindow: Громадська CDynamicChain,...
{
готелю:
 nbsp; ...

BEGIN_MSG_MAP(CMyWindow)
      MESSAGE_HANDLER (WM_PAINT, OnPaint)
      MESSAGE_HANDLER (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.SetCh&ainEntry (1313, amp; chainedObj);

де chainedObj , ланцюгових об'єкт і екземпляр класу, отриманих від CMessageMap. Тепер Якщо myCtl отримує повідомлення про те, що не обробляється OnPaint або OnSetFocus , процедура вікно направляє повідомлення, chainedObj , за замовчуванням повідомлення.

Щоб отримати додаткові відомості про повідомлення карта ланцюжка переглянути Повідомлення карти в статті "Класи вікон ATL".

# включити lt;atlwin.h>

Члени класу

Дивіться також CWindowImpl

Index