1

メモリアドレスのリストと垂直スクロールバーを含むテキストボックスを備えたwinforms VB.NETアプリがあります。ユーザーがスクロールバーでクリックまたはドラッグした場所に基づいて、テキストボックスをスクロールできるようにしたいと考えています。例えば:

ユーザーがスクロールバーの上下矢印部分をクリックした場合、スクロールバーの値を 1 (smallchange 値) だけ変更します。

「チャンネル」(上/下矢印と親指の間の部分) をクリックすると、計算された量だけスクロールしたいと思います。

親指がドラッグされている場合は、スクロールバーの値を使用したいだけです。(大変化値)

ここで明らかな何かが欠けていることは間違いありません!

4

2 に答える 2

1

ユーザーが ScrollBar をクリックした方法を調べるには、Scroll イベントを使用して、ScrollEventArgs の Type プロパティを調べます。

Private Sub VScrollBar1_Scroll(sender As System.Object, e As System.Windows.Forms.ScrollEventArgs) Handles VScrollBar1.Scroll
    If e.Type = ScrollEventType.SmallIncrement Then
        'User clicked the right (or bottom) scroll arrow
    End If

    If e.Type = ScrollEventType.SmallDecrement Then
        'User clicked the left (or top) scroll arrow
    End If

    If e.Type = ScrollEventType.LargeIncrement Then
        'User clicked the area between the right (or bottom) scroll arrow and the thumb
    End If

    If e.Type = ScrollEventType.LargeDecrement Then
        'User clicked the area between the left (or top) scroll arrow and the thumb
    End If
End Sub

これらのスクロール タイプは、ユーザーがキーボードのキーを押してスクロールしたかどうかも示すことができることに注意してください。たとえば、上 (または左) 矢印キーのタイプは SmallDecrement です。

于 2013-07-02T16:10:34.343 に答える