C# 点中窗体任意位置移动窗口
时间: 2023-07-12 10:12:39 浏览: 45
您可以使用以下代码在 C# 中实现窗口的拖动:
```
private bool dragging = false;
private Point dragCursorPoint;
private Point dragFormPoint;
private void Form1_MouseDown(object sender, MouseEventArgs e)
{
dragging = true;
dragCursorPoint = Cursor.Position;
dragFormPoint = this.Location;
}
private void Form1_MouseMove(object sender, MouseEventArgs e)
{
if (dragging)
{
Point dif = Point.Subtract(Cursor.Position, new Size(dragCursorPoint));
this.Location = Point.Add(dragFormPoint, new Size(dif));
}
}
private void Form1_MouseUp(object sender, MouseEventArgs e)
{
dragging = false;
}
```
您需要将 `Form1` 替换为您的窗口名称,然后将 `MouseDown`、`MouseMove` 和 `MouseUp` 事件分别绑定到窗口的相应事件处理程序上。这样,您的窗口就可以在任意位置拖动了。