让TscrollBox响应鼠标滚轮的滚动事件
2011-06-07 17:04
369 查看
TscrollBox组件默认不响应鼠标的滚轮事件,如果要使它响应就要在它的OnMouseWheel事件中写入以下代码:
if WheelDelta < 0 then
SendMessage(scrollBox1.Handle,WM_VSCROLL, SB_LINEDOWN, 0) //向下滚
else
SendMessage(scrollBox1.Handle,WM_VSCROLL, SB_LINEUP, 0); //向上滚
可是写了以上后还是有个问题,如果scrollbox1中没有输入焦点,这个OnMouseWheel事件是不会触发,怎么办呢。我在它的OnMouseMove事件中加入TScrollBox(Sender).SetFoucs;如此之后,如果鼠标在scrollBox1中移动过了,就给它设置输入焦点,这样就能响应OnMouseWhell事件了。
if WheelDelta < 0 then
SendMessage(scrollBox1.Handle,WM_VSCROLL, SB_LINEDOWN, 0) //向下滚
else
SendMessage(scrollBox1.Handle,WM_VSCROLL, SB_LINEUP, 0); //向上滚
可是写了以上后还是有个问题,如果scrollbox1中没有输入焦点,这个OnMouseWheel事件是不会触发,怎么办呢。我在它的OnMouseMove事件中加入TScrollBox(Sender).SetFoucs;如此之后,如果鼠标在scrollBox1中移动过了,就给它设置输入焦点,这样就能响应OnMouseWhell事件了。
相关文章推荐
- TScrollBox响应鼠标滚动事件
- jquery 响应不同浏览器 鼠标滚轮上下滚动事件 相对的操作
- jquery监听鼠标滚轮(滚动)事件
- 绑定鼠标滚轮上下滚动事件
- js鼠标滚轮上下滚动监听事件应用实例(跨浏览器,亲测)
- 兼容各浏览器获取鼠标滚轮上下滚动事件
- HTML5 精灵8方向移动+背景滚动+音效播放+鼠标事件响应
- 稳扎稳打Silverlight(46) - 4.0UI之FlowDirection, TextTrimming, 响应鼠标滚轮事件, 响应鼠标右键事件, 全屏的新特性
- Delphi 拦截滚轮事件不响应滚轮的上下滚动
- 稳扎稳打Silverlight(46) - 4.0UI之FlowDirection, TextTrimming, 响应鼠标滚轮事件, 响应鼠标右键事件, 全屏的新特性
- 配合鼠标滚轮事件的可自定义样式的区域滚动条插件(基于jquery)
- flex鼠标滚轮事件(鼠标滚动后,数字变换)
- 滚动条响应鼠标滑轮事件实现上下滚动的js代码
- javascript滚动栏响应鼠标滑轮的实现上下滚动事件
- map控件中对鼠标滚轮事件的响应
- ScrollBox 响应鼠标滚轮和ComboBox禁止滚动
- 稳扎稳打Silverlight(46) - 4.0UI之FlowDirection, TextTrimming, 响应鼠标滚轮事件, 响应鼠标右键事件, 全屏的新特性
- ScrollBox响应鼠标滚轮事件
- 滚动条响应鼠标滑轮事件实现上下滚动的js代码
- js响应鼠标滚轮事件