机房重构-C#WinForm无边框窗体移动方法

解决思路:我们可以通过修改窗体位置从而实现移动窗体的功能。

第一步:定义一个位置信息Point用于存储鼠标位置:

private Point mPoint;

 第二步:全选窗体(选择一个控件,然后按Ctrl+A),添加MouseDown和MouseMove事件。这样点击该窗体任意位置都可以拖动窗体。

        private void pictureBox1_MouseDown(object sender, MouseEventArgs e)
        {
            mPoint = new Point(e.X, e.Y);
        }

        private void pictureBox1_MouseMove(object sender, MouseEventArgs e)
        {
            if (e.Button == MouseButtons.Left)
            {
                this.Location = new Point(this.Location.X + e.X - mPoint.X, this.Location.Y + e.Y - mPoint.Y);
            }
        }

感觉选对博客很重要,开始找了很多博客照着做,他们不但复杂,还没有用。理清自己问题所在,对症下药。

发布了96 篇原创文章 · 获赞 14 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/Ciel_Y/article/details/97611252