在TScrollBox TFrame TFrom TRichEdit TControl控件里有
OnMouseWheelUp
OnMouseWheelDown
如果你要用的控件没有这个事件,那你只好重载一下好了。
因为TControl里其实是有的,而所有的可视控件都是TControl
的子类,所以你只要自定义一个新控件,然后把这两个事件加
上就好了。以TMemo为例,新建一个TMemoWheel类以TMemo类为
基类:
unit MemoWheel;
interface
uses
Windows, Messages, SysUtils, Classes, Controls, StdCtrls;
type
TMemoWheel = class(TMemo)
private
{ Private declarations }
protected
{ Protected declarations }
public
{ Public declarations }
published
property OnMouseWheelUp;
property OnMouseWheelDown;
//就是这两行了
{ Published declarations }
end;
procedure Register;
implementation
procedure Register;
begin
RegisterComponents('Dark Angel', [TMemoWheel]);
end;
end.
这就好了。当然Kenny的方法也是对的,不过你要自己判断
当前焦点在哪个控件,写对应的处理函数。我的方法麻烦一
点,不过定义之后可以重复使用。