Udostępnij za pośrednictwem


COMMAND_HANDLER

Określa wpis w mapie wiadomości.

COMMAND_HANDLER( id, code, func )

Parametry

  • id
    [w] Identyfikator elementu menu, kontroli lub akceleratora.

  • code
    [w] Kod powiadomienia.

  • func
    [w] Nazwa funkcji obsługi wiadomości.

Uwagi

COMMAND_HANDLERmapuje WM_COMMAND wiadomości do obsługi określonych funkcji, na podstawie kodu powiadomienia i identyfikator formantu.Na przykład:

class ATL_NO_VTABLE CPolyProp :
   public CComObjectRootEx<CComSingleThreadModel>,
   public CComCoClass<CPolyProp, &CLSID_PolyProp>,
   public IPropertyPageImpl<CPolyProp>,
   public CDialogImpl<CPolyProp>
{
public:
BEGIN_COM_MAP(CPolyProp)
   COM_INTERFACE_ENTRY(IPropertyPage)
END_COM_MAP()

BEGIN_MSG_MAP(CPolyProp)
   COMMAND_HANDLER(IDC_SIDES, EN_CHANGE, OnEnChangeSides)
   CHAIN_MSG_MAP(IPropertyPageImpl<CPolyProp>)
END_MSG_MAP()

   // When a CPolyProp object receives a WM_COMMAND message identified 
   // by IDC_SIDES and EN_CHANGE, the message is directed to 
   // CPolyProp::OnEnChangeSides for the actual processing.
   LRESULT OnEnChangeSides(WORD /*wNotifyCode*/, WORD /*wID*/, HWND /*hWndCtl*/, 
      BOOL& /*bHandled*/);

Wszelkich funkcji określonych w COMMAND_HANDLER makro zostanie zdefiniowany następująco:

LRESULT CommandHandler(WORD wNotifyCode, WORD wID, HWND hWndCtl, BOOL& bHandled);

Zestawy mapę wiadomości bHandled do TRUE przed CommandHandler jest wywoływana.Jeśli CommandHandler nie obsługuje w pełni wiadomości, należy ustawić bHandled do FALSE do wskazania wiadomość wymaga dalszego przetwarzania.

[!UWAGA]

Zawsze rozpocząć mapa wiadomości z BEGIN_MSG_MAP.Następnie można zadeklarować mapy kolejnych wiadomości alternatywny z ALT_MSG_MAP.END_MSG_MAP makro oznacza koniec mapę wiadomości.Mapa każdej wiadomości musi mieć dokładnie jedno wystąpienie BEGIN_MSG_MAP i END_MSG_MAP.

Dodatkowo do COMMAND_HANDLER, można użyć MESSAGE_HANDLER mapować WM_COMMAND wiadomości, niezależnie od identyfikatora lub kodu.W przypadku MESSAGE_HANDLER(WM_COMMAND, OnHandlerFunction) będą kierować wszystkie WM_COMMAND wiadomości do OnHandlerFunction.

Aby uzyskać więcej informacji na temat mapom wiadomości w ATL zobacz Wiadomości mapuje.

Wymagania

Nagłówek: atlwin.h

Zobacz też

Informacje

COMMAND_ID_HANDLER

COMMAND_CODE_HANDLER

COMMAND_RANGE_HANDLER

NOTIFY_HANDLER

Inne zasoby

Makra mapę wiadomości (ATL)

Makra ATL