![None.gif](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
![None.gif](https://www.cnblogs.com/Images/OutliningIndicators/None.gif)
private
void
Form1_MouseDown(
object
sender, System.Windows.Forms.MouseEventArgs e)
{
int xOffset;
int yOffset;
if (e.Button == MouseButtons.Left)
{
xOffset = - e.X /* - SystemInformation.FrameBorderSize.Width */ ;
yOffset = - e.Y /* - SystemInformation.CaptionHeight - SystemInformation.FrameBorderSize.Height */ ;
mouseOffset = new Point(xOffset, yOffset);
isMouseDown = true ;
}
}
创建该窗体的 MouseMove事件的相应处理程序{
int xOffset;
int yOffset;
if (e.Button == MouseButtons.Left)
{
xOffset = - e.X /* - SystemInformation.FrameBorderSize.Width */ ;
yOffset = - e.Y /* - SystemInformation.CaptionHeight - SystemInformation.FrameBorderSize.Height */ ;
mouseOffset = new Point(xOffset, yOffset);
isMouseDown = true ;
}
}
private
void
Form1_MouseMove(
object
sender, System.Windows.Forms.MouseEventArgs e)
{
if (isMouseDown)
{
Point mousePos = Control.MousePosition;
mousePos.Offset(mouseOffset.X, mouseOffset.Y);
Location = mousePos;
}
}
创建该窗体的MouseUp事件的相应处理程序{
if (isMouseDown)
{
Point mousePos = Control.MousePosition;
mousePos.Offset(mouseOffset.X, mouseOffset.Y);
Location = mousePos;
}
}
private
void
Form1_MouseUp(
object
sender, System.Windows.Forms.MouseEventArgs e)
{
// 修改鼠标状态isMouseDown的值
// 确保只有鼠标左键按下并移动时,才移动窗体
if (e.Button == MouseButtons.Left)
{
isMouseDown = false ;
}
}
{
// 修改鼠标状态isMouseDown的值
// 确保只有鼠标左键按下并移动时,才移动窗体
if (e.Button == MouseButtons.Left)
{
isMouseDown = false ;
}
}