C#窗体移动

作者: Aries_wan | 来源:发表于2018-04-12 15:30 被阅读0次

    Point mouseOff;//鼠标移动位置变量

            bool leftFlag;//标签是否为左键

            private void MainForm_MouseDown(object sender, MouseEventArgs e)

            {

                if (e.Button == MouseButtons.Left)

                {

                    mouseOff = new Point(-e.X, -e.Y); //得到变量的值

                    leftFlag = true;                  //点击左键按下时标注为true;

                }

            }

            private void MainForm_MouseMove(object sender, MouseEventArgs e)

            {

                if (leftFlag)

                {

                    Point mouseSet = Control.MousePosition;

                    mouseSet.Offset(mouseOff.X, mouseOff.Y);  //设置移动后的位置

                    Location = mouseSet;

                }

            }

            private void MainForm_MouseUp(object sender, MouseEventArgs e)

            {

                if (leftFlag)

                {

                    leftFlag = false;//释放鼠标后标注为false;

                }

            }


    主函数中添加

    panel1.MouseDown += MainForm_MouseDown;

     panel1.MouseUp += MainForm_MouseUp;

     panel1.MouseMove += MainForm_MouseMove;

    相关文章

      网友评论

        本文标题:C#窗体移动

        本文链接:https://www.haomeiwen.com/subject/xmtfkftx.html