1、新建一个C#应用程序,应用程序命名为Move。
2、窗体界面设计如下,窗体的FormBorderStyle属性设置为None:
3、程序初始化如下:bool mov = false;//初始化 int xpos; int ypos;在窗体的MouseDown事件中添加一下代码: private void Form1_MouseDown(object sender, MouseEventArgs e) { mov = true; xpos = MousePosition.X;//鼠标的x坐标为当前窗体左上角x坐标 ypos = MousePosition.Y;//鼠标的y坐标为当前窗体左上角y坐标 }
4、在窗体的MouseMove事件中添加一下代码:private void Form1娄多骋能_MouseMove(object sender, MouseEventArgs e) { i熠硒勘唏f (mov) { this.Left += MousePosition.X - xpos;//根据鼠标x坐标确定窗体的左边坐标x this.Top += MousePosition.Y - ypos;//根据鼠标的y坐标窗体的顶部,即Y坐标 xpos = MousePosition.X; ypos = MousePosition.Y; } }
5、在窗体的MouseUp和MouseLeave事件中添加一下代码:private void Form1_MouseUp(object sender, MouseEventArgs e) { mov = false;//停止移动 } private void Form1_MouseLeave(object sender, EventArgs e) { xpos = 0; //设置初始状态 ypos = 0; mov = false; }
6、程序运行如下: