WM_MOUSEHWHEEL メッセージ
マウスの水平スクロール ホイールが傾いているか回転したときにアクティブ ウィンドウに送信されます。 DefWindowProc 関数を使用すると、ウィンドウの親にメッセージが伝達されます。 メッセージは、処理を行うウィンドウが検出されるまで親チェーンで DefWindowProc によって伝達されるため、内部転送されません。
ウィンドウは、WindowProc 関数を介してこのメッセージを受け取ります。
#define WM_MOUSEHWHEEL 0x020E
パラメーター
-
wParam
-
上位ワードは、ホイールが回転する距離を示します。これは、WHEEL_DELTA の倍数または係数で表され、120 に設定されています。 正の値は、ホイールが右に回転したことを示します。負の値は、ホイールが左に回転したことを示します。
下位ワードは、さまざまな仮想キーが押されているかどうかを示します。 このパラメーターには、次の値のいずれかを指定できます。
Value 意味 - MK_CONTROL
- 0x0008
CTRL キーが押されています。 - MK_LBUTTON
- 0x0001
マウスの左ボタンが押されています。 - MK_MBUTTON
- 0x0010
マウスの中央ボタンが押されています。 - MK_RBUTTON
- 0x0002
マウスの右ボタンが押されています。 - MK_SHIFT
- 0x0004
Shift キーが押されています。 - MK_XBUTTON1
- 0x0020
最初の X ボタンが押されています。 - MK_XBUTTON2
- 0x0040
2 つ目の X ボタンが押されています。 -
lParam
-
下位ワードによって、ポインターの x 座標が画面の左上隅を基準に指定されます。
上位ワードによって、ポインターの y 座標が画面の左上隅を基準に指定されます。
戻り値
アプリケーションでこのメッセージを処理する場合は、0 を返す必要があります。
解説
wParam パラメーターの情報を取得するには、次のコードを使用します。
fwKeys = GET_KEYSTATE_WPARAM(wParam);
zDelta = GET_WHEEL_DELTA_WPARAM(wParam);
水平方向と垂直方向の位置を取得するには、次のコードを使用します。
xPos = GET_X_LPARAM(lParam);
yPos = GET_Y_LPARAM(lParam);
前述のように、x 座標は戻り値の下位 short になります。y 座標は上位 short になります (複数のモニターがあるシステムでは負の値をとることができるため、両方とも signed 値を表します)。 戻り値が変数に割り当てられている場合は、MAKEPOINTS マクロを使用して戻り値から POINTS 構造体を取得できます。 また、GET_X_LPARAM マクロまたは GET_Y_LPARAM マクロを使用して、x 座標または y 座標を抽出することもできます。
重要
LOWORD マクロまたは HIWORD マクロを使ってカーソル位置の x 座標と y 座標を抽出しないでください。これらのマクロは、複数のモニターを持つシステム上で正しくない結果を返します。 複数のモニターを持つシステムは、負の x 座標と y 座標を持つ場合があり、LOWORD と HIWORD は座標を符号なし数量として扱います。
ホイールの回転は、WHEEL_DELTA の倍数であり、120 に設定されています。 これは、実行されるアクションのしきい値であり、そのようなアクション (例: 1 インクリメントずつスクロール) は、デルタごとに 1 つ発生するはずです。
デルタは、Microsoft やその他のベンダーが、各メッセージの値は小さく抑えつつ、1 回転ごとに送信できるメッセージ数を増やすために、より細かな解像度のホイール (例: ノッチがなく、自由に回転するホイール) を構築できるように、120 に設定されていました。 この機能を使用するには、WHEEL_DELTA に到達するまで受信デルタ値を追加するか (デルタ回転の場合は同じ応答が得られます)、より頻繁なメッセージに応答して一部の行をスクロールします。 また、スクロールの粒度を選択し、デルタに到達するまでデルタを累積することもできます。
要件
要件 | Value |
---|---|
サポートされている最小のクライアント |
Windows Vista [デスクトップ アプリのみ] |
サポートされている最小のサーバー |
Windows Server 2008 [デスクトップ アプリのみ] |
ヘッダー |
|
関連項目
-
リファレンス
-
Conceptual
-
その他のリソース