C# winform 随意拖动窗体

本贴最后更新于 999 天前,其中的信息可能已经沧海桑田

1 先看效果

动画.gif

2.看代码

 	#region 鼠标按下
        private void lb_Title_MouseDown(object sender, MouseEventArgs e)
        {
            if (!MouseDown)
            {
                MouseDown = true;
                MOuseP = new Point(-e.X,-e.Y);     //e.?以WF窗口左上角原点为坐标轴
            }
        }
        #endregion
        #region 鼠标弹起
        private void lb_Title_MouseUp(object sender, MouseEventArgs e)
        {
            if (MouseDown)
            {
                MouseDown = false;
            }
        }
        #endregion
        #region 鼠标移动
        private void lb_Title_MouseMove(object sender, MouseEventArgs e)
        {
            if (MouseDown)
            {
                Point Mouse = Control.MousePosition;//以屏幕左上角原点为坐标轴
                Mouse.Offset(MOuseP); //偏移量
                this.Location = Mouse;//Mouse:form窗口左上角坐标
            }
        }
        #endregion

3 看原因图

image.png

  • C#
    29 引用 • 34 回帖 • 5 关注

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...