1、Delphi有一些组件有OnMouseWhell事件,例如TMemo。如果你的控件不是从这里继承的
可以自己写消息处理函数,消息是WM_MOUSEWHEEL

解决方案 »

  1.   

    TWincontrol.OnMouseWheel可以响应滑轮消息,但一般用不着,因为每一个TWincontrol缺省地把消息发给主窗口,你只要编写主窗口的OnMouseWheel就可以了.但要注意,有时候你的鼠标点击了非TWincontrol元件,你需要找到一个TWincontrol执行SetFocus.
      

  2.   

    我在Windows SDK帮助中找到了这个消息,但是被注明只在Windows NT下支持,我也觉得很奇怪,98下的Notepad明明能够相应这个消息的.第二个问题我找到了答案,因为我在使用区域的时候采用了以下的方法
    DeleteObject(SelectClipRgn(Canvas.Handle,CreateRectRgn(....)));
    根据WindowsAPI的用法应该没错,但是我使用的时候就肯定出错。估计是DeleteObject没有起到作用。后来我使用了一个临时变量来管理Rgn就没有问题了。谢谢两位的回答