首先建一个Windows应用程序
将Form1的 FormBorderStyle属性设置为None
主要是在Form1窗体触发三个事件:Form4_MouseDown,Form4_MouseMove,Form4_MouseUp
代码如下:
public partial class Form1 : Form{ Point mouseOff; //鼠标移动位置变量 bool leftFlag; //标签是否为左键 public Form1() { InitializeComponent(); } }
//用代码设置窗体的起始位置
private void Form_Load(object sender, System.EventArgs e) { this.Left=(int)((Screen.PrimaryScreen.Bounds.Width-this.Width)/2); this.Top=(int)((Screen.PrimaryScreen.Bounds.Height-this.Height)/2); } private void Form1_MouseDown(object sender, MouseEventArgs e){ if (e.Button == MouseButtons.Left) { mouseOff = new Point(-e.X, -e.Y); //得到变量的值 leftFlag = true; //点击左键按下时标注为true; } }private void Form1_MouseMove(object sender, MouseEventArgs e){ if (leftFlag) { Point mouseSet = Control.MousePosition; mouseSet.Offset(mouseOff.X, mouseOff.Y); //设置移动后的位置 Location = mouseSet; }}private void Form1_MouseUp(object sender, MouseEventArgs e){ if (leftFlag) { leftFlag = false;//释放鼠标后标注为false; }} }