次の方法で共有


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

参照

参照

CWnd クラス

階層図

CWnd::OnMouseMove

概念

CWnd のメンバー