C#如何判断鼠标在窗口内(Winform)
来源:网络收集 点击: 时间:2024-07-02【导读】:
介绍Windows Form编写桌面应用时,如何获取鼠标位置和当前客户区矩形。工具/原料moreVisual Studio 2015(C#).NET Framework 2.0方法/步骤1/6分步阅读
2/6
3/6
4/6
5/6
6/6
注意事项
首先,通过Control类的MousePosition属性,可以获取鼠标光标位置,是屏幕的坐标。

在窗体类内写代码,窗体Form有成员函数PointToClient,可以将一个屏幕空间点转化成相对当前窗体客户区域的坐标。

当前窗体有ClientSize属性,可以用来获取当前窗体工作区(客户区)的大小,这个属性也可以用于设置。
注意,Size属性比这个大,Size属性不仅包括工作区,还包括边框标题栏等。

使用如图代码判断鼠标位置是否在客户区外。
如果要判断鼠标是否在整个窗体外,可以自己用Size属性的分量和ClientSize属性的分量来计算,这是个加减法问题。

如图是一个应用情景,检查鼠标是否在窗体内外,进行窗体淡入淡出。Opacity为0时完全消失,鼠标可穿透。


另外,如果要求简单,还可以直接用Form1的鼠标事件判断。MouseMove事件处理的参数中,含有鼠标位置信息。

当设置窗体Opacity为0时,虽然窗体完全消失,但是客户区矩形仍在原来位置。
WINFORM鼠标窗体版权声明:
1、本文系转载,版权归原作者所有,旨在传递信息,不代表看本站的观点和立场。
2、本站仅提供信息发布平台,不承担相关法律责任。
3、若侵犯您的版权或隐私,请联系本站管理员删除。
4、文章链接:http://www.1haoku.cn/art_925820.html
上一篇:百度地图如何开启车牌限行
下一篇:内蒙古旅游攻略,大草原旅游