我在网上找到一个代码,是C#的,我转换后放到MouseDown 中,但是无效.
If e.Button = MouseButtons.middle Then
Dim mousePoint As New Point(e.X, e.Y)
换算成相对本窗体的位置
mousePoint.Offset(e.Form.BaseForm.Location.X, e.Form.BaseForm.Location.Y)
判断是否在panel内
If e.Sender.BaseControl.RectangleToScreen(e.Sender.BaseControl.DisplayRectangle).Contains(mousePoint) Then
滚动
e.Sender.BaseControl.AutoScrollPosition = New Point(0, e.Sender.BaseControl.VerticalScroll.Value - e.Delta)
End If
End If
我还想将此代码放入全局:
''' <summary>
''' 滚动方法
''' </summary>
''' <param name="sender"></param>
''' <param name="e"></param>
Public Sub FormSample_MouseWheel(sender As Object, e As MouseEventArgs)
'获取光标位置
Dim mousePoint As New Point(e.X, e.Y)
'换算成相对本窗体的位置
mousePoint.Offset(Me.Location.X, Me.Location.Y)
'判断是否在panel内
If panel_content.RectangleToScreen(panel_content.DisplayRectangle).Contains(mousePoint) Then
'滚动
panel_content.AutoScrollPosition = New Point(0, panel_content.VerticalScroll.Value - e.Delta)
End If
End Sub
但是 e As MouseEventArgs) 通不过!
[此贴子已经被作者于2015/12/10 8:55:41编辑过]