MESSAGE_HANDLER
Określa wpis w mapie wiadomości.
MESSAGE_HANDLER(
msg,
func
)
Parametry
msg
[w] Komunikat systemu Windows.func
[w] Nazwa funkcji obsługi wiadomości.
Uwagi
MESSAGE_HANDLERmapuje komunikatu systemu Windows do obsługi określonych funkcji.
Wszelkich funkcji określonych w MESSAGE_HANDLER makro zostanie zdefiniowany następująco:
LRESULT MessageHandler(UINT uMsg, WPARAM wParam, LPARAM lParam, BOOL& bHandled);
Zestawy mapę wiadomości bHandled do TRUE przed MessageHandler jest wywoływana.Jeśli MessageHandler 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 MESSAGE_HANDLER, można użyć COMMAND_HANDLER i NOTIFY_HANDLER mapować WM_COMMAND i WM_NOTIFY wiadomości, odpowiednio.
Aby uzyskać więcej informacji na temat mapom wiadomości w ATL zobacz Wiadomości mapuje.
Przykład
class CMyBaseWindow : public CWindowImpl<CMyBaseWindow>
{
public:
BEGIN_MSG_MAP(CMyBaseWindow)
MESSAGE_HANDLER(WM_CREATE, OnCreate)
END_MSG_MAP()
// When a CMyBaseWindow object receives a WM_CREATE message, the message
// is directed to CMyBaseWindow::OnCreate for the actual processing.
LRESULT OnCreate(UINT /*nMsg*/, WPARAM /*wParam*/, LPARAM /*lParam*/,
BOOL& /*bHandled*/)
{
return 0;
}
};
Wymagania
Nagłówek: atlwin.h