我想滾動條往上滾,就上翻一頁,往下滾,就下翻一頁。不知道滾動條怎麽才知道我上下翻動了。
解决方案 »
- 如何控制文本框的光标在按向上键的时候,光标不会向前移动?
- Vista仅获8%软件开发人员支持 前景堪忧
- 两个exe窗体如何相互检测对方的存在?
- 关于OLE控件
- 有这样的组件可以在运行的窗体上,象vb的设计界面一样拖动窗体的上的组件!
- 数据库定时存入大量数据。此时造成页面按钮反映迟钝如何解决
- 用Microsoft.Jet.OLEDB.4.0连接ACCESS2000的问题,在线等!!!
- 请高手帮助解决关于利用vb编程实现生成word文档的方法~谢谢大家
- vb中怎样能取得一个目录下的所有文件名。
- 学习vb的疑惑!!!
- win2000 server 文字旋转
- 关于通过MsFlexGrid控件实现数据库记录修改的问题?
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
'支持滚轮鼠标API---------------------------------
'将下列代码写到表格控件的GotFocus事件中
Private Sub 控件名称_GotFocus()
Oldwinproc = GetWindowLong(Me.hWnd, GWL_WNDPROC)
SetWindowLong Me.hWnd, GWL_WNDPROC, AddressOf FlexScroll
End Sub'将下列代码写到表格控件的LostFocus事件中
Private Sub 控件名称_LostFocus()
SetWindowLong Me.hWnd, GWL_WNDPROC, Oldwinproc
End Sub