NOTIFY_HANDLER ( Id, cd, Func )
Parameter
id
[in] Der Bezeichner des Steuerelements, das die Nachricht sendet.
code
[in] Der Benachrichtigungscode.
func
[in] Der Name der Message Handler-Funktion.
Bemerkungen
Definiert einen Eintrag in eine Meldungszuordnung. NOTIFY_HANDLER ordnet eine WM_NOTIFY -Meldung an die angegebene Handler-Funktion, basierend auf der Benachrichtigungscode und die Steuerelement-ID. Zum Beispiel
klasse CMyClass:...
{
Öffentliche:
&Nbsp; ...
BEGIN_MSG_MAP(CMyClass)
NOTIFY_HANDLER (IDC_MYCTL, NM_CLICK, OnClick)
...
END_MSG_MAP()
/ / Wenn ein CMyClass Objekt erhält eine WM_NOTIFY
/ / Nachricht identifiziert durch IDC_MYCTL und NM_CLICK,
/ / die Nachricht richtet sich an CMyClass::OnClick
/ / für die eigentliche Verarbeitung.
LRESULT OnClick (...)
{ ... }
}
Jede Funktion in einem Makro NOTIFY_HANDLER angegeben muss wie folgt definiert:
LRESULT NotifyH&andler(int idCtrl, LPNMHDR pnmh, BOOLamp; bHandled)
Die Kartensets Nachricht bHandled auf TRUE vor NotifyHandler wird aufgerufen. Wenn NotifyHandler nicht vollständig behandelt die Nachricht, sollte gesetzt bHandled , FALSE , um anzugeben die Nachricht benötigt Weiterverarbeitung.
Hinweis&Nbsp; Beginnen Sie immer eine Meldungszuordnung mit BEGIN_MSG_MAP. Anschließend können Sie deklarieren, dass nachfolgende alternative Meldungszuordnungen mit ALT_MSG_MAP. Das END_MSG_MAP -Makro markiert das Ende der Meldungszuordnung. Jede Nachricht Karte muss genau eine Instanz des BEGIN_MSG_MAP und END_MSG_MAP.
Zusätzlich zu NOTIFY_HANDLERkönnen Sie MESSAGE_HANDLER eine WM_NOTIFY -Meldung ohne Rücksicht auf einen Bezeichner oder einen Code zuordnen. In diesem Fall MESSAGE_HANDLER(WM_NOTIFY, OnHandlerFunction) leitet alle WM_NOTIFY -Nachrichten anOnHandlerFunction.
Weitere Informationen zur Verwendung von Meldungszuordnungen in ATL Meldungszuordnungen finden Sie im Artikel "ATL-Fensterklassen."
ATL-Makros und globale Funktionen
Siehe auch
NOTIFY_ID_HANDLER, NOTIFY_CODE_HANDLER, NOTIFY_RANGE_HANDLER, COMMAND_HANDLER