Foxtable(狐表)用户栏目专家坐堂 → 如何用鼠标中键的滚动来控制容易的滚动条


  共有2426人关注过本帖平板打印复制链接

主题:如何用鼠标中键的滚动来控制容易的滚动条

帅哥哟,离线,有人找我吗?
blackzhu
  1楼 | QQ | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信 一级勋章
等级:狐仙 帖子:9875 积分:57596 威望:0 精华:15 注册:2008/9/1 9:45:00
如何用鼠标中键的滚动来控制容易的滚动条  发帖心情 Post By:2015/12/10 8:55:00 [只看该作者]

我在网上找到一个代码,是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编辑过]

 回到顶部