2016-10-10 2 views
0

VB.Net 2012의 양식에 HScrollbar가 있습니다. 마우스 단추를 놓을 때 슬라이더를 다시 0으로 스냅하고 싶습니다. 그러나 HScrollbar 및 VScrollbar에는 MouseUp 이벤트가 없습니다. MouseLeave를 사용하여 동작을 다소 시뮬레이트 할 수 있지만 부정확하고 문제가 있습니다.MouseUp 이벤트를 Windows Forms 스크롤 막대에 추가 할 수 있습니까?

클래스를 확장 할 수 있다는 것을 알고 있지만,이 경우 적용되는지는 잘 모르겠습니다. MouseUp 이벤트를 추가하기 위해 스크롤 막대 클래스를 확장 할 수 있습니까? 그렇다면 어떻게? 여기

내 코드의 예입니다

MouseCaptureChangedValueChanged 이벤트의 조합은 나를 위해 일한
Public Class Form1 

    Private Sub HScrollBar1_MouseLeave(sender As Object, e As EventArgs) Handles HScrollBar1.MouseLeave 
     HScrollBar1.Value = 0 
    End Sub 

End Class 
+0

당신이'MouseCaptureChanged' 이벤트를 시도? –

답변

0

:

Private Sub HScrollBar1_MouseCaptureChanged(sender As Object, e As EventArgs) Handles HScrollBar1.MouseCaptureChanged 
    If Not HScrollBar1.Capture Then 
     HScrollBar1.Value = 0 
    End If 
End Sub 

Private Sub HScrollBar1_ValueChanged(sender As Object, e As EventArgs) Handles HScrollBar1.ValueChanged 
    If Not HScrollBar1.Capture Then 
     HScrollBar1.Value = 0 
    End If 
End Sub 
관련 문제