WM_MBUTTONUP bericht
Geplaatst wanneer de gebruiker de middelste muisknop loslaat terwijl de cursor zich in het clientgebied van een venster bevindt. Als de muis niet wordt vastgelegd, wordt het bericht onder de cursor in het venster geplaatst. Anders wordt het bericht geplaatst in het venster dat de muis heeft vastgelegd.
Een venster ontvangt dit bericht via de functie WindowProc.
#define WM_MBUTTONUP 0x0208
Parameters
-
wParam-
-
Hiermee wordt aangegeven of verschillende virtuele sleutels niet beschikbaar zijn. Deze parameter kan een of meer van de volgende waarden zijn.
Waarde Betekenis - MK_CONTROL
- 0x0008
De Ctrl-toets is niet beschikbaar. - MK_LBUTTON
- 0x0001
De linkermuisknop is offline. - MK_MBUTTON
- 0x0010
De middelste muisknop is omlaag. - MK_RBUTTON
- 0x0002
De rechtermuisknop is omlaag. - MK_SHIFT
- 0x0004
De Shift-toets is niet beschikbaar. - MK_XBUTTON1
- 0x0020
De XBUTTON1 is offline. - MK_XBUTTON2
- 0x0040
De XBUTTON2 is uit. -
lParam-
-
Het woord met lage volgorde geeft de x-coördinaat van de cursor aan. De coördinaat is relatief ten opzichte van de linkerbovenhoek van het clientgebied.
Het woord met hoge volgorde geeft de y-coördinaat van de cursor aan. De coördinaat is relatief ten opzichte van de linkerbovenhoek van het clientgebied.
Houd er rekening mee dat wanneer een snelmenu aanwezig is (weergegeven), coördinaten relatief zijn ten opzichte van het scherm, niet het clientgebied. Omdat TrackPopupMenu een asynchrone aanroep is en de melding WM_MBUTTONUP geen speciale vlag heeft die de coördinaat van de afleiding aangeeft, kan een toepassing niet zien of de x,y-coördinaten in lParam- relatief zijn ten opzichte van het scherm of het clientgebied.
Retourwaarde
Als een toepassing dit bericht verwerkt, moet het nul retourneren.
Opmerkingen
Gebruik de volgende code om de horizontale en verticale positie te verkrijgen:
xPos = GET_X_LPARAM(lParam);
yPos = GET_Y_LPARAM(lParam);
Zoals hierboven vermeld, bevindt de x-coördinaat zich in de lage volgorde korte van de retourwaarde; de y-coördinaat bevindt zich in de volgorde korte (beide vertegenwoordigen ondertekende waarden omdat ze negatieve waarden op systemen met meerdere monitors kunnen aannemen). Als de retourwaarde is toegewezen aan een variabele, kunt u de macro MAKEPOINTS- gebruiken om een PUNTEN structuur te verkrijgen van de retourwaarde. U kunt ook de GET_X_LPARAM of GET_Y_LPARAM macro gebruiken om de x- of y-coördinaat op te halen.
Belangrijk
Gebruik de LOWORD- of HIWORD- macro's niet om de x- en y-coördinaten van de cursorpositie te extraheren, omdat deze macro's onjuiste resultaten retourneren op systemen met meerdere beeldschermen. Systemen met meerdere monitors kunnen negatieve x- en y-coördinaten hebben, en LOWORD- en HIWORD- de coördinaten behandelen als niet-ondertekende hoeveelheden.
Eisen
Eis | Waarde |
---|---|
Minimaal ondersteunde client |
Windows 2000 Professional [alleen desktop-apps] |
Minimaal ondersteunde server |
Windows 2000 Server [alleen desktop-apps] |
Rubriek |
|
Zie ook
-
-
conceptuele
-
andere resources