
Delphi中判断鼠标是否在透明窗体内
Delphi中该如何判断鼠标是否移入和离开透明窗体。注意,窗体的背景色是透明的,所以OnMouseEnter和OnMouseLeave不起作用。...
Delphi中该如何判断鼠标是否移入和离开透明窗体。
注意,窗体的背景色是透明的,所以OnMouseEnter和OnMouseLeave不起作用。 展开
注意,窗体的背景色是透明的,所以OnMouseEnter和OnMouseLeave不起作用。 展开
3个回答
展开全部
有几种解决办法。
1.GetWindowRect,通过这个API获得窗体在屏幕里的矩形位置,分析鼠标的屏幕坐标是不是在这个矩形范围里。
(不知道透明窗体getWindowRect 会不会是0
- -,先这样的思路1,这个可行就用这个,不行就看2)
2.窗体的left,top应该能轻易得到吧。长度和宽度都知道吧。
这几个条件合起来就是一个Rect(GetWindowRect 返回的类型,即矩形范围),这样同1的后半部,分析一下,得到你要的结果。
1.GetWindowRect,通过这个API获得窗体在屏幕里的矩形位置,分析鼠标的屏幕坐标是不是在这个矩形范围里。
(不知道透明窗体getWindowRect 会不会是0
- -,先这样的思路1,这个可行就用这个,不行就看2)
2.窗体的left,top应该能轻易得到吧。长度和宽度都知道吧。
这几个条件合起来就是一个Rect(GetWindowRect 返回的类型,即矩形范围),这样同1的后半部,分析一下,得到你要的结果。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询