C#WinForm无边框窗体移动方法、模仿鼠标单击标题栏移动窗体位置

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


 private Point mPoint;

 

给窗体等控件增加MouseDown和MouseMove事件

复制代码
 /// <summary>
 2         /// 鼠标按下
 3         /// </summary>
 4         /// <param name="sender"></param>
 5         /// <param name="e"></param>
 6         private void panel1_MouseDown(object sender, MouseEventArgs e)
 7         {
 8             mPoint = new Point(e.X, e.Y);
 9         }
10 
11         /// <summary>
12         /// 鼠标移动
13         /// </summary>
14         /// <param name="sender"></param>
15         /// <param name="e"></param>
16         private void panel1_MouseMove(object sender, MouseEventArgs e)
17         {
18             if (e.Button == MouseButtons.Left)
19             {
20                 this.Location = new Point(this.Location.X + e.X - mPoint.X, this.Location.Y + e.Y - mPoint.Y);
21             }
22         }
复制代码

这样就可以随意移动位置了。

posted @   人渴浸思茶  阅读(122)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
点击右上角即可分享
微信分享提示