六子技术网首页

六子技术网

  • 网站首页
  • HTML/CSS
  • javascript
  • seo优化
  • PS美工
  • 系统安全
  • 漏洞预警
  • 编程学习
  • 原创专区
  • 【六子技术网】是一家综合技术门户,为您提供网站建设,编程开发,安全维护,漏洞预警等技术文章

    技术文章MAP

    文章

    VB让窗体支持鼠标滑轮操作

    日期:2019/11/28 15:35:34来源分类:编程开发

    让VB的应用程序,让VB的控件支持鼠标滚轮

    VB6.0本身,以及VB做出来的程序都不支持鼠标滚轮,以前鼠标一般是两键,但现在基本上是三键鼠标,即有一个中键,有滚轮,如果应用程序不支持鼠标滚轮,这在用户的体验上就没有那么好了,操作上也不方便,还好有高手做了相应的代码解决此事,只要新建一个标准模块(.bas),然后在窗体上加两个事件代码就行了。

    标准模块代码如下:
    Public Const GWL_WNDPROC = (-4)
    Public Const WM_COMMAND = &H111
    Public Const WM_MBUTTONDOWN = &H207
    Public Const WM_MBUTTONUP = &H208
    Public Const WM_MOUSEWHEEL = &H20A

    Public Oldwinproc   As Long
    Public Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" (ByVal hWnd As Long, _
                            ByVal nIndex As Long, ByVal dwNewLong As Long) As Long

    Public Declare Function CallWindowProc Lib "user32" Alias "CallWindowProcA" (ByVal lpPrevWndFunc As Long, _
                            ByVal hWnd As Long, ByVal Msg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long

    Public Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" (ByVal hWnd As Long, _
                            ByVal nIndex As Long) As Long

    Public Function FlexScroll(ByVal hWnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
        '支持滚轮的滚动  Yu  2004-5-10  15:33
        Select Case wMsg
          Case WM_MOUSEWHEEL
            Select Case wParam
              Case -7864320     '鼠标滚轮向下滚动
                SendKeys "{PGDN}"
              Case 7864320       '鼠标滚轮向上滚动
                SendKeys "{PGUP}"
            End Select
        End Select

        FlexScroll = CallWindowProc(Oldwinproc, hWnd, wMsg, wParam, lParam)
    End Function

    在窗体模块上的代码如下:
    Private Sub MfgMonth_GotFocus()
        Oldwinproc = GetWindowLong(Me.hWnd, GWL_WNDPROC)
        SetWindowLong Me.hWnd, GWL_WNDPROC, AddressOf FlexScroll
    End Sub

    Private Sub MfgMonth_LostFocus()
        SetWindowLong Me.hWnd, GWL_WNDPROC, Oldwinproc
    End Sub

    本文由六子技术网小编:小熊编辑整理 - 转载请注明来源 - http://www.liuzi.net/bc/html/3936.html

    随机推荐

    • 该分类还没有添加任何内容!
    • 该分类还没有添加任何内容!

    Copyright 2005-2019 【六子技术网】 版权所有 黑ICP备16886888号

    声明:本站所有文章来自互联网 如有异议 请联系本站管理员