BEGIN_MSG_MAP
Markiert den Beginn der Standardmeldungszuordnung.
BEGIN_MSG_MAP( theClass )
Parameter
- theClass
[in] Der Name der Klasse, die die Meldungszuordnung enthält.
Hinweise
CWindowImpl::WindowProc verwendet die Standardmeldungszuordnung, um Nachrichten zu verarbeiten, die an das Fenster gesendet werden. Die Meldungszuordnung verweist Meldungen entweder auf die entsprechende Handlerfunktion oder auf eine andere Meldungszuordnung.
Die folgenden Makros ordnen eine Meldung an eine Handlerfunktion zu. Diese Funktion muss in theClass definiert werden.
Makro |
Description |
---|---|
Ordnet eine Windows-Meldung auf eine Handlerfunktion zu. |
|
Ordnet einen zusammenhängenden Bereich von Windows-Meldungen auf eine Handlerfunktion zu. |
|
Ordnet eine WM_COMMAND Meldung an eine Handlerfunktion, abhängig vom Benachrichtigungscode und den Bezeichner des Menüelements, des Steuerelements oder der Zugriffstaste zu. |
|
Ordnet eine WM_COMMAND Meldung an eine Handlerfunktion, basierend auf den Bezeichner des Menüelements, des Steuerelements oder der Zugriffstaste zu. |
|
Ordnet eine WM_COMMAND Meldung an eine Handlerfunktion, abhängig vom Benachrichtigungscode zu. |
|
Ordnet einen zusammenhängenden Bereich von WM_COMMAND Meldungen an eine Handlerfunktion, basierend auf den Bezeichner des Menüelements, des Steuerelements oder der Zugriffstaste zu. |
|
Ordnet eine WM_NOTIFY Meldung an eine Handlerfunktion, abhängig vom Benachrichtigungscode und das Steuerelement-ID zu. |
|
Ordnet eine WM_NOTIFY Meldung an eine Handlerfunktion, auf Grundlage des Steuerelement-ID zu. |
|
Ordnet eine WM_NOTIFY Meldung an eine Handlerfunktion, abhängig vom Benachrichtigungscode zu. |
|
Ordnet einen zusammenhängenden Bereich von WM_NOTIFY Meldungen an eine Handlerfunktion, auf Grundlage des Steuerelement-ID zu. |
Die folgenden Makros verweisen Meldungen auf eine andere Meldungszuordnung. Dieser Prozess wird aufgerufen "Verketten."
Makro |
Description |
---|---|
Ketten zur Standardmeldungszuordnung in der Basisklasse. |
|
Ketten zur Standardmeldungszuordnung in einem Datenmember der Klasse. |
|
Ketten zu einer anderen Meldungszuordnung in der Basisklasse. |
|
Ketten zu einer anderen Meldungszuordnung in einem Datenmember der Klasse. |
|
Ketten zur Standardmeldungszuordnung in einer anderen Klasse zur Laufzeit. |
Die folgenden Makros verweisen "" reflektierte Meldungen aus dem übergeordneten Fenster. Beispielsweise sendet ein Steuerelement üblicherweise Benachrichtigungsmeldungen an das übergeordnete Fenster zur Verarbeitung, aber das übergeordnete Fenster kann die Nachricht wieder dem Steuerelement entsprechen.
Makro |
Description |
---|---|
Ordnet eine WM_COMMAND reflektierte Meldung an eine Handlerfunktion, abhängig vom Benachrichtigungscode und den Bezeichner des Menüelements, des Steuerelements oder der Zugriffstaste zu. |
|
Ordnet eine WM_COMMAND reflektierte Meldung an eine Handlerfunktion, basierend auf den Bezeichner des Menüelements, des Steuerelements oder der Zugriffstaste zu. |
|
Ordnet eine WM_COMMAND reflektierte Meldung an eine Handlerfunktion, abhängig vom Benachrichtigungscode zu. |
|
Ordnet eine WM_COMMAND reflektierte Meldung an eine Handlerfunktion, basierend auf einem zusammenhängenden Bereich von Steuerelement-ID zu. |
|
Ordnet eine WM_COMMAND reflektierte Meldung an eine Handlerfunktion, abhängig vom Benachrichtigungscode und einen zusammenhängenden Bereich von Steuerelement-ID zu. |
|
Ordnet eine WM_NOTIFY reflektierte Meldung an eine Handlerfunktion, abhängig vom Benachrichtigungscode und das Steuerelement-ID zu. |
|
Ordnet eine WM_NOTIFY reflektierte Meldung an eine Handlerfunktion, auf Grundlage des Steuerelement-ID zu. |
|
Ordnet eine WM_NOTIFY reflektierte Meldung an eine Handlerfunktion, abhängig vom Benachrichtigungscode zu. |
|
Ordnet eine WM_NOTIFY reflektierte Meldung an eine Handlerfunktion, basierend auf einem zusammenhängenden Bereich von Steuerelement-ID zu. |
|
Ordnet eine WM_NOTIFY reflektierte Meldung an eine Handlerfunktion, abhängig vom Benachrichtigungscode und einen zusammenhängenden Bereich von Steuerelement-ID zu. |
Beispiel
class CMyExtWindow : public CMyBaseWindow
{
public:
BEGIN_MSG_MAP(CMyExtWindow)
MESSAGE_HANDLER(WM_PAINT, OnPaint)
MESSAGE_HANDLER(WM_SETFOCUS, OnSetFocus)
CHAIN_MSG_MAP(CMyBaseWindow)
END_MSG_MAP()
LRESULT OnPaint(UINT /*nMsg*/, WPARAM /*wParam*/, LPARAM /*lParam*/,
BOOL& /*bHandled*/)
{
return 0;
}
LRESULT OnSetFocus(UINT /*nMsg*/, WPARAM /*wParam*/, LPARAM /*lParam*/,
BOOL& /*bHandled*/)
{
return 0;
}
};
Wenn ein CMyExtWindow-Objekt eine WM_PAINT Meldung empfängt, wird die Meldung auf CMyExtWindow::OnPaint für das tatsächliche Verarbeitung verwiesen. Wenn OnPaint angibt, benötigt die Meldung verarbeiten, die Meldung wird dann verwiesen auf die Standardmeldungszuordnung in CMyBaseWindow.
Neben der Standardmeldungszuordnung können Sie eine alternative Meldungszuordnung mit ALT_MSG_MAP definieren. Starten Sie immer eine Meldungszuordnung mit BEGIN_MSG_MAP. Sie können folgende alternative Meldungszuordnungen deklarieren. Im folgenden Beispiel wird die Standardmeldungszuordnung und eine alternative Meldungszuordnung, enthaltender eine Handlerfunktion an:
BEGIN_MSG_MAP(CMyOneAltClass)
MESSAGE_HANDLER(WM_PAINT, OnPaint)
ALT_MSG_MAP(1)
MESSAGE_HANDLER(WM_SETFOCUS, OnSetFocus)
END_MSG_MAP()
Im folgenden Beispiel werden zwei alternative Meldungszuordnungen an. Die Standardmeldungszuordnung ist leer.
BEGIN_MSG_MAP(CMyClass)
ALT_MSG_MAP(1)
MESSAGE_HANDLER(WM_PAINT, OnPaint)
MESSAGE_HANDLER(WM_SETFOCUS, OnSetFocus)
ALT_MSG_MAP(2)
MESSAGE_HANDLER(WM_CREATE, OnCreate)
END_MSG_MAP()
Das END_MSG_MAP-Makro markiert das Ende der Meldungszuordnung. Beachten Sie, dass es immer genau eine Instanz von BEGIN_MSG_MAP und von END_MSG_MAP gibt.
Weitere Informationen zur Verwendung von Meldungszuordnungen in ATL, finden Sie unter Meldungszuordnungen.
Anforderungen
Header: atlwin.h