C#Winform窗口移动方法

在我们将Winform自带的边框隐藏之后,我们需要自己编写窗口的移动。

思路就是

1.获得点击左键时当前鼠标的坐标

2.获得移动后鼠标的坐标

3.窗体的坐标=移动后的鼠标坐标-移动前的鼠标坐标

private Point mouseOff;//鼠标移动位置变量

private bool leftFlag;//鼠标是否为左键

private void Form1_MouseDown(object sender, MouseEventArgs e)

{

if(e.Button == MouseButtons.Left)

{

mouseOff = new Point(-e.X, -e.Y);//获得当前鼠标的坐标

leftFlag = true;

}

}

private void Form1_MouseMove(object sender, MouseEventArgs e)

{

if (leftFlag)

{

Point mouseSet = Control.MousePosition;//获得移动后鼠标的坐标

mouseSet.Offset(mouseOff.X, mouseOff.Y);//设置移动后的位置

Location = mouseSet;

}

}

private void Form1_MouseUp(object sender, MouseEventArgs e)

{

if (leftFlag)

{

leftFlag = false;

}

}

以上这篇C#Winform窗口移动方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。

以上是 C#Winform窗口移动方法 的全部内容, 来源链接: utcz.com/z/312897.html

回到顶部