MouseEventArgs.Delta プロパティ


マウス ホイールの回転回数を表す符号付きの数値に定数 WHEEL_DELTA の値を乗算した値を取得します。Gets a signed count of the number of detents the mouse wheel has rotated, multiplied by the WHEEL_DELTA constant. マウス ホイールのノッチ 1 つ分が 1 移動量に相当します。A detent is one notch of the mouse wheel.

 property int Delta { int get(); };
public int Delta { get; }
member this.Delta : int
Public ReadOnly Property Delta As Integer


マウス ホイールの回転回数を表す符号付きの数値に定数 WHEEL_DELTA の値を乗算した値。A signed count of the number of detents the mouse wheel has rotated, multiplied by the WHEEL_DELTA constant.

このメンバーの使用例を次のコード例に示します。The following code example demonstrates the use of this member. この例では、イベントハンドラーは、Control.MouseClick イベントの発生を報告します。In the example, an event handler reports on the occurrence of the Control.MouseClick event. このレポートは、イベントがいつ発生し、デバッグに役立つかを理解するのに役立ちます。This report helps you learn when the event occurs and can assist you in debugging. 複数のイベントまたは頻繁に発生するイベントについてレポートするには、MessageBox.ShowConsole.WriteLine に置き換えるか、複数行 TextBoxにメッセージを追加することを検討してください。To report on multiple events or on events that occur frequently, consider replacing MessageBox.Show with Console.WriteLine or appending the message to a multiline TextBox.

コード例を実行するには、ButtonComboBoxなどの Controlから継承する型のインスタンスを含むプロジェクトに貼り付けます。To run the example code, paste it into a project that contains an instance of a type that inherits from Control, such as a Button or ComboBox. 次に、インスタンスに Control1 という名前を付け、イベントハンドラーが Control.MouseClick イベントに関連付けられていることを確認します。Then name the instance Control1 and ensure that the event handler is associated with the Control.MouseClick event.

private void Control1_MouseClick(Object sender, MouseEventArgs e) {

System.Text.StringBuilder messageBoxCS = new System.Text.StringBuilder();
messageBoxCS.AppendFormat("{0} = {1}", "Button", e.Button );
messageBoxCS.AppendFormat("{0} = {1}", "Clicks", e.Clicks );
messageBoxCS.AppendFormat("{0} = {1}", "X", e.X );
messageBoxCS.AppendFormat("{0} = {1}", "Y", e.Y );
messageBoxCS.AppendFormat("{0} = {1}", "Delta", e.Delta );
messageBoxCS.AppendFormat("{0} = {1}", "Location", e.Location );
MessageBox.Show(messageBoxCS.ToString(), "MouseClick Event" );
Private Sub Control1_MouseClick(sender as Object, e as MouseEventArgs) _ 
     Handles Control1.MouseClick

    Dim messageBoxVB as New System.Text.StringBuilder()
    messageBoxVB.AppendFormat("{0} = {1}", "Button", e.Button)
    messageBoxVB.AppendFormat("{0} = {1}", "Clicks", e.Clicks)
    messageBoxVB.AppendFormat("{0} = {1}", "X", e.X)
    messageBoxVB.AppendFormat("{0} = {1}", "Y", e.Y)
    messageBoxVB.AppendFormat("{0} = {1}", "Delta", e.Delta)
    messageBoxVB.AppendFormat("{0} = {1}", "Location", e.Location)
    MessageBox.Show(messageBoxVB.ToString(),"MouseClick Event")

End Sub


マウスホイールには、ホイールとマウスボタンの機能が組み合わされています。The mouse wheel combines the features of a wheel and a mouse button. ホイールには、個別の等間隔の切り込みがあります。The wheel has discrete, evenly spaced notches. ホイールを回転すると、各ノッチが検出されるたびにホイールメッセージが送信されます。When you rotate the wheel, a wheel message is sent as each notch is encountered. 1つのホイールノッチ (分) は、windows 定数 WHEEL_DELTA (120) によって定義されます。One wheel notch, a detent, is defined by the windows constant WHEEL_DELTA, which is 120. 正の値は、ホイールが前方に回転された (ユーザーから離れている) ことを示します。負の値は、ホイールが逆方向に回転された (ユーザーに向かって) ことを示します。A positive value indicates that the wheel was rotated forward (away from the user); a negative value indicates that the wheel was rotated backward (toward the user).

現時点では、120の値は1つの分の標準です。Currently, a value of 120 is the standard for one detent. 解像度の高いマウスが導入された場合、WHEEL_DELTA の定義が小さくなることがあります。If higher resolution mice are introduced, the definition of WHEEL_DELTA might become smaller. ほとんどのアプリケーションでは、集計全体ではなく、正または負の値を確認する必要があります。Most applications should check for a positive or negative value rather than an aggregate total.