WM_CONTEXTMENU Nachricht
Benachrichtigt ein Fenster, dass der Benutzer ein Kontextmenü anzeigen möchte. Der Benutzer hat möglicherweise auf die rechte Maustaste (mit der rechten Maustaste geklickt) im Fenster geklickt, UMSCHALT+F10 gedrückt oder die Anwendungstaste (Kontextmenütaste) gedrückt, die auf einigen Tastaturen verfügbar ist.
#define WM_CONTEXTMENU 0x007B
Parameter
-
wParam
-
Ein Handle für das Fenster, in dem der Benutzer mit der rechten Maustaste auf die Maus geklickt hat. Dies kann ein untergeordnetes Fenster des Fensters sein, das die Nachricht empfängt. Weitere Informationen zur Verarbeitung dieser Nachricht finden Sie im Abschnitt Hinweise.
-
lParam
-
Das Wort mit niedriger Reihenfolge gibt die horizontale Position des Cursors in Bildschirmkoordinaten zum Zeitpunkt des Mausklicks an.
Das Wort mit hoher Reihenfolge gibt die vertikale Position des Cursors in Bildschirmkoordinaten zum Zeitpunkt des Mausklicks an.
Rückgabewert
Kein Rückgabewert.
Bemerkungen
Ein Fenster kann diese Nachricht verarbeiten, indem ein Kontextmenü mit den Funktionen TrackPopupMenu oder TrackPopupMenuEx angezeigt wird. Verwenden Sie den folgenden Code, um die horizontalen und vertikalen Positionen abzurufen.
xPos = GET_X_LPARAM(lParam);
yPos = GET_Y_LPARAM(lParam);
Wenn ein Fenster kein Kontextmenü anzeigt, sollte diese Nachricht an die Funktion DefWindowProc übergeben werden. Wenn ein Fenster ein untergeordnetes Fenster ist, sendet DefWindowProc die Nachricht an das übergeordnete Fenster. Andernfalls zeigt DefWindowProc ein Standard-Kontextmenü an, wenn sich die angegebene Position im Untertitel des Fensters befindet.
DefWindowProc generiert die WM_CONTEXTMENU Nachricht, wenn die WM_RBUTTONUP oder WM_NCRBUTTONUP Nachricht verarbeitet wird oder wenn der Benutzer UMSCHALT+F10 eingibt. Die WM_CONTEXTMENU Nachricht wird auch generiert, wenn der Benutzer die VK_APPS-Taste drückt und loslässt.
Wenn das Kontextmenü z. B. über die Tastatur generiert wird, wenn der Benutzer UMSCHALT+F10 eingibt, sind die x- und y-Koordinaten -1, und die Anwendung sollte das Kontextmenü an der Position der aktuellen Auswahl und nicht an (xPos, yPos) anzeigen.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) |
Windows 2000 Professional [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) |
Windows 2000 Server [nur Desktop-Apps] |
Header |
|