Sdílet prostřednictvím


zpráva WM_MBUTTONDOWN

Publikováno, když uživatel stiskne prostřední tlačítko myši, zatímco kurzor je v klientské oblasti okna. Pokud se myš nezachytí, zpráva se odešle do okna pod kurzorem. V opačném případě se zpráva publikuje do okna, které zachytilo myš.

Okno obdrží tuto zprávu prostřednictvím funkce WindowProc.

#define WM_MBUTTONDOWN                  0x0207

Parametry

wParam

Určuje, jestli jsou různé virtuální klíče v výpadku. Tento parametr může být jedna nebo více následujících hodnot.

Hodnota Význam
MK_CONTROL
0x0008
Klávesa CTRL je dole.
MK_LBUTTON
0x0001
Levé tlačítko myši je dole.
MK_MBUTTON
0x0010
Prostřední tlačítko myši je dole.
MK_RBUTTON
0x0002
Pravé tlačítko myši je dole.
MK_SHIFT
0x0004
Klávesa SHIFT je dole.
MK_XBUTTON1
0x0020
XBUTTON1 je dole.
MK_XBUTTON2
0x0040
XBUTTON2 je dole.

lParam

Slovo s nízkým pořadím určuje souřadnici x kurzoru. Souřadnice je relativní vzhledem k levému hornímu rohu klientské oblasti.

Slovo s vysokým pořadím určuje souřadnici y kurzoru. Souřadnice je relativní vzhledem k levému hornímu rohu klientské oblasti.

Návratová hodnota

Pokud aplikace tuto zprávu zpracuje, měla by vrátit nulu.

Poznámky

K získání vodorovné a svislé pozice použijte následující kód:

xPos = GET_X_LPARAM(lParam); 
yPos = GET_Y_LPARAM(lParam); 

Jak je uvedeno výše, souřadnice x je v nízkém pořadí návratové hodnoty; souřadnice y je ve vysokém pořadí krátkých (oba představují podepsané hodnoty, protože mohou přijímat záporné hodnoty v systémech s více monitory). Pokud je vrácená hodnota přiřazena k proměnné, můžete pomocí makra MAKEPOINTS získat strukturu POINTS z návratové hodnoty. K extrahování souřadnic x nebo y můžete použít také GET_X_LPARAM nebo GET_Y_LPARAM makro.

Důležitý

Nepoužívejte LOWORD ani makra HIWORD extrahovat souřadnice kurzoru x a y, protože tato makra vrací nesprávné výsledky v systémech s více monitory. Systémy s více monitory můžou mít záporné souřadnice x a y a LOWORD a HIWORD zacházet se souřadnicemi jako s množstvími bez znaménka.

Pokud chcete zjistit, že se stiskla klávesa ALT, zkontrolujte, jestli GetKeyState s VK_MENU< 0. Poznámka: Nesmí to být GetAsyncKeyState.

Požadavky

Požadavek Hodnota
Minimální podporovaný klient
Windows 2000 Professional [jenom desktopové aplikace]
Minimální podporovaný server
Windows 2000 Server [jenom desktopové aplikace]
Záhlaví
Winuser.h (včetně Windowsx.h)

Viz také

referenční

GET_X_LPARAM

GET_Y_LPARAM

GetCapture

GetKeyState

SetCapture

WM_MBUTTONDBLCLK

WM_MBUTTONUP

koncepční

vstupu myši

další prostředky

MAKEPOINTS

bodů