代码改变世界

C#实现无边框窗体拖动

2012-07-25 16:46  唐然  阅读(193)  评论(0编辑  收藏  举报
  Point mouseOff;//鼠标移动位置变量
        bool leftFlag;//标签是否为左键
        private void Form1_MouseDown(object sender, MouseEventArgs e)
        {
           
if (e.Button == MouseButtons.Left)
            {
                mouseOff
= new Point(-e.X, -e.Y); //得到变量的值
                leftFlag = true;                  //点击左键按下时标注为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;//释放鼠标后标注为false;
            }
        }
移动电源推荐