欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

C#Winform窗口移动方法

程序员文章站 2023-12-03 09:21:28
在我们将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窗口移动方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。