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 @ 2022-03-30 14:45  人渴浸思茶  阅读(129)  评论(0)    收藏  举报