1,451
社区成员
发帖
与我相关
我的任务
分享
Private Const WM_MOUSEWHEEL As Long = &H20A
Dim WithEvents objSubClass As cSubclass
Private Sub Form_Load()
Set objSubClass = New cSubclass
objSubClass.AddWindowMsgs Datatbl1.hWnd '挂上子类化
End Sub
Private Sub Form_Unload(Cancel As Integer)
objSubClass.DeleteWindowMsg Datatbl1.hWnd '取消子类化
Set objSubClass = Nothing
End Sub
Private Sub objSubClass_MsgCome(ByVal bBefore As Boolean, bHandled As Boolean, lReturn As Long, lng_hWnd As Long, uMsg As Long, wParam As Long, lParam As Long)
If bBefore Then
Select Case uMsg
Case WM_MOUSEWHEEL '拦截滚轮消息
Select Case (wParam / 65536) '判断是向上滚还是向下滚
Case 120
SendKeys "{UP}" '模拟按键
Case -120
SendKeys "{DOWN}" '模拟按键
End Select
End Select
End If
End Sub