Halcom 发表于 2022-9-1 21:45:09

C#中实现拖动无边框窗体Form

C#中实现拖动无边框窗体Form
手把手操作视频:https://www.bilibili.com/video/BV1414y1s7NK/?vd_source=3ba33e171386f3af3339cdeadc088281

      Point mouseOff;//鼠标移动位置变量
         bool leftFlag;//标签是否为左键

      private void panel1_MouseDown(object sender, MouseEventArgs e)
      {
            if (e.Button == MouseButtons.Left)
            {
                mouseOff = new Point(-e.X, -e.Y); //得到变量的值
                leftFlag = true;                  //点击左键按下时标注为true;
            }
      }

      private void panel1_MouseMove(object sender, MouseEventArgs e)
      {
            if (leftFlag)
            {
                Point mouseSet = Control.MousePosition;
                mouseSet.Offset(mouseOff.X, mouseOff.Y);//设置移动后的位置
                Location = mouseSet;
            }
      }

      private void panel1_MouseUp(object sender, MouseEventArgs e)
      {
            if (leftFlag)
            {
                leftFlag = false;//释放鼠标后标注为false;
            }
      }

参考:
【1】https://blog.csdn.net/yanhanhui1/article/details/117574954
【2】http://t.zoukankan.com/hantianwei-p-1715895.html
【3】https://blog.csdn.net/zwb_578209160/article/details/104193476
【4】https://www.cnblogs.com/Ares-blog/p/3970112.html





页: [1]
查看完整版本: C#中实现拖动无边框窗体Form