winForm 实现鼠标拖动

//定义一个布尔变量,作为事件的开关。 bool b = false; //定义一个‘点’的变量,接收鼠标的点位置。 Point mousePonit; private void Form2_MouseDown(object sender, MouseEventArgs e) { //考虑是否鼠标左键按下,如果按下则开始做以下的事情。 if (e.Button == MouseButtons.Left) { //给mousePonit定义为当前的鼠标位置坐标。 mousePonit = new Point(-e.X, -e.Y); //设置变量b为布尔真值。 b = true; } } private void Form2_MouseMove(object sender, MouseEventArgs e) { //如果获取b为真的时候,开始执行下面的语句。 if (b) { //定义一个‘点’变量,为组件的鼠标光标位置 Point p = Control.MousePosition; //平移mousePonit为p变量。 p.Offset(mousePonit); //控件的位置,为p位置。 this.Location = p; } } private void Form2_MouseUp(object sender, MouseEventArgs e) { b = false; }
posted @ 2009-10-27 12:06  李彪  阅读(297)  评论(0编辑  收藏  举报