CWnd::OnMouseWheel
ユーザーがマウス ホイールを回転し、ホイールの次の刻み目に達すると、フレームワークがこのメンバー関数を呼び出します。
afx_msg BOOL OnMouseWheel(
UINT nFlags,
short zDelta,
CPoint pt
);
パラメーター
nFlags
各種の仮想キーが押されているかどうかを示します。 このパラメーターには、次の値を組み合わせて指定できます。MK_CONTROL Ctrl キーが押されている場合に設定します。
MK_LBUTTON マウスの左ボタンが押されている場合に設定します。
MK_MBUTTON マウスの中央ボタンが押されている場合に設定します。
MK_RBUTTON マウスの右ボタンが押されている場合に設定します。
MK_SHIFT Shift キーが押されている場合に設定します。
zDelta
回転距離を指示します。 zDelta 値は WHEEL_DELTA (値 120) の倍数または約数にします。 ゼロ (0) 未満の値を指定すると、後方に (ユーザーに向かって) 回転します。ゼロより大きい値を指定すると、前方に (ユーザーから遠ざかるように) 回転します。 この応答を逆方向にするには、マウス ソフトウェアでホイールの設定を変更します。 このパラメーターの詳細については、「解説」を参照してください。pt
カーソルの x 座標と y 座標を指定します。 座標は、常に画面の左上隅からの相対位置になります。
戻り値
マウス ホイール スクロールが有効な場合は 0 以外を返します。無効な場合は 0 を返します。
解説
オーバーライドしていない OnMouseWheel は既定の WM_MOUSEWHEEL を呼び出します。 このメッセージは Windows によって、フォーカスのあるコントロールまたは子ウィンドウに自動的に転送されます。 Win32 の関数 DefWindowProc は、このメッセージを処理するウィンドウに到達するまで、親チェインをさかのぼってメッセージを転送します。
パラメーター zDelta は WHEEL_DELTA (設定値 120) の倍数にします。 この値は、単一操作のしきい値になります。単一操作 (刻み目 1 つ分の前方スクロールなど) は、デルタの距離ごとに行われることになります。
WHEEL_DELTA120 に刻み目のない自由回転ホイールなどの高解像度ホイールを許可するのに設定されました。 高解像度ホイール回転あたりのより多くのメッセージを送信が各メッセージ デルタ値を小さくしています。 ようなホイールを使用するには、受信を追加zDeltaまでの値WHEEL_DELTA(あなたを所定のデルタ回転に対して同じ応答を得るように) に達し、またはスクロールに頻繁にメッセージに応答します。 スクロール単位を選択してまでデルタ値を累積することもできますWHEEL_DELTAに達した。
このメンバー関数をオーバーライドすると、マウス ホイールのスクロール動作を独自に設定できます。
注意
OnMouseWheelメッセージは、Windows NT 4. 0 およびそれ以降のバージョンを処理します。 Windows 95/98 または Windows NT 3.51 用のメッセージの処理については、CWnd::OnRegisteredMouseWheel を使用してください。
必要条件
**ヘッダー:**afxwin.h