感知鼠标移入移出组件

王朝delphi·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

感知鼠标移入移出组件

虽然从D7开始,给许多组件增加了OnEnter与OnExit事件,但对于大多数组件,要感知鼠标移入移出组件仍是一件不容易的事情。下面的方法就是用于解决这个问题。

(对一般组件有效,对Form、MainMenu等无效)

private

{ Private declarations }

//定义两个过程:

procedure CMMouseEnter(var Msg: TMessage); message CM_MOUSEENTER;

procedure CMMouseLeave(var Msg: TMessage); message CM_MOUSELEAVE;

procedure TForm1.CMMouseEnter(var Msg: TMessage);

var

anObject : TObject;

begin

anObject := TObject(Msg.lParam);

//Button1为要感知的组件,可以换为其它组件

if anobject = Button1 then

edit1.Text :='Mouse Enter';

end;

procedure TForm1.CMMouseLeave(var Msg: TMessage);

var

anObject : TObject;

begin

anObject := TObject(Msg.lParam);

if anobject = Button1 then

edit1.Text := 'Mouse Leave';

end;

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航