首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

鼠标在窗体下移动的时候,怎么显示当前鼠标的坐标和控件的相对坐标

2012-08-11 
鼠标在窗体上移动的时候,如何显示当前鼠标的坐标和控件的相对坐标?这个窗体上有panel,webbrowser,我用鼠标

鼠标在窗体上移动的时候,如何显示当前鼠标的坐标和控件的相对坐标?
这个窗体上有panel,webbrowser,我用鼠标在界面上移动

我希望在移动的过程中,显示2个数据

1.当前鼠标的相对于整个屏幕的坐标

2.当前鼠标相对于当前控件的坐标(比如,panel,鼠标移动进去的时候,鼠标在当前区域内的相对坐标)。


请问,有什么办法实现这个功能?

[解决办法]
TForm和TPanel都有OnMouseMove事件,而TWebBrowser没有,所以只能在时钟里每隔一会儿取一下鼠标的坐标吧!

Delphi(Pascal) code
procedure TForm1.Timer1Timer(Sender: TObject);var  C, S: TPoint;  W: TWinControl;begin//Timer1.Interval = 100  S := Mouse.CursorPos;  W := FindControl(WindowFromPoint(S));  if W <> nil then  begin    C := W.ScreenToClient(S);    Text := Format('屏幕坐标(%d, %d), 控件坐标(%d, %d)', [S.X, S.Y, C.X, C.Y])  end else    Text := Format('屏幕坐标(%d, %d)', [S.X, S.Y])end;
[解决办法]
可是截获鼠标移动消息

热点排行