WM_LBUTTONDOWN メッセージ
ユーザーがマウスの左ボタンを押し、カーソルがウィンドウのクライアント領域にあるときに投稿されます。 マウスがキャプチャされていない場合、メッセージはカーソルの下のウィンドウに投稿されます。 それ以外の場合、メッセージは、マウスをキャプチャしたウィンドウに投稿されます。
ウィンドウは、WindowProc 関数を介してこのメッセージを受信します。
#define WM_LBUTTONDOWN 0x0201
パラメーター
-
wParam を
する -
さまざまな仮想キーがダウンしているかどうかを示します。 このパラメーターには、次の値のうち 1 つ以上を指定できます。
価値 意味 - MK_CONTROL
- 0x0008
Ctrl キーがダウンしています。 - MK_LBUTTON
- 0x0001
マウスの左ボタンが下に表示されます。 - MK_MBUTTON
- 0x0010
マウスの中央ボタンが下にあります。 - MK_RBUTTON
- 0x0002
マウスの右ボタンが下に表示されます。 - MK_SHIFT
- 0x0004
Shift キーがダウンしています。 - MK_XBUTTON1
- 0x0020
XBUTTON1がダウンしています。 - MK_XBUTTON2
- 0x0040
XBUTTON2がダウンしています。 -
lParam
-
下位ワードは、カーソルの x 座標を指定します。 座標は、クライアント領域の左上隅を基準にしています。
高次ワードは、カーソルの y 座標を指定します。 座標は、クライアント領域の左上隅を基準にしています。
戻り値
アプリケーションがこのメッセージを処理すると、0 が返されます。
例
LRESULT CALLBACK WndProc(_In_ HWND hWnd, _In_ UINT msg, _In_ WPARAM wParam, _In_ LPARAM lParam)
{
POINT pt;
switch (msg)
{
case WM_LBUTTONDOWN:
{
pt.x = GET_X_LPARAM(lParam);
pt.y = GET_Y_LPARAM(lParam);
}
break;
default:
return DefWindowProc(hWnd, msg, wParam, lParam);
}
return 0;
}
その他の例については、GitHub Windows クラシック サンプル を参照してください。
備考
前述のように、x 座標は戻り値の下位 短い になります。y 座標は高次 短い にあります (複数のモニターを持つシステムでは負の値を取ることができるので、どちらも 符号付き 値を表します)。 戻り値が変数に割り当てられている場合は、MAKEPOINTS マクロを使用して、戻り値から POINTS 構造体を取得できます。 GET_X_LPARAM または GET_Y_LPARAM マクロを使用して、x 座標または y 座標を抽出することもできます。
大事な
カーソル位置の x 座標と y 座標を抽出するには、
Alt キーが押されたことを検出するには、GetKeyState が
必要条件
要件 | 価値 |
---|---|
サポートされる最小クライアント |
Windows 2000 Professional [デスクトップ アプリのみ] |
サポートされている最小サーバー |
Windows 2000 Server [デスクトップ アプリのみ] |
ヘッダ |
|
関連項目
-
リファレンス
-
GetCapture の
-
GetKeyState の
-
SetCapture の
-
概念
-
マウス入力 の
-
その他のリソース を
する -
MAKEPOINTS を
する -
ポイント を
する