首页 > 编程开发 > C类语言    日期:2021-07-15 / 浏览

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

觉得上面的内容有用吗?快来点个赞吧!

点赞() 我要打赏

温馨提示 : 本站内容来自会员投稿以及互联网,所有源码及教程均为作者总结编辑,请大家在使用过程中提前做好备份,以免发生无法预知的错误,源码类教程请勿直接用于生产环境!

 可能感兴趣的文章