当前位置 : 主页 > 编程语言 > c语言 >

C#Winform窗口移动方法

来源:互联网 收集:自由互联 发布时间:2021-05-17
在我们将Winform自带的边框隐藏之后,我们需要自己编写窗口的移动。 思路就是 1.获得点击左键时当前鼠标的坐标 2.获得移动后鼠标的坐标 3.窗体的坐标=移动后的鼠标坐标-移动前的鼠标

在我们将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窗口移动方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持易盾网络。

网友评论