C#如何获取鼠标相对当前窗口的坐标

2024-12-31 08:25:32
推荐回答(3个)
回答1:

可以用Control.MousePosition获得当前鼠标的坐标,使用PointToClient计算鼠标相对于某个控件的坐标,如下
Point screenPoint = Control.MousePosition;//鼠标相对于屏幕左上角的坐标
Point formPoint = this.PointToClient(Control.MousePosition);//鼠标相对于窗体左上角的坐标
Point contextMenuPoint = contextMenuStrip1.PointToClient(Control.MousePosition); //鼠标相对于contextMenuStrip1左上角的坐标

回答2:

假设你的相对窗口是form1
相应坐标就是form1.PointToClient(MousePosition)

form1也可以是其他控件

回答3:

Point p;

Form1_MouseMove(object sender,MouseEnventArgs e)
{
p= new point(e.x,e.y);
}