bool MoveFlag; //鼠标状态
int x;//移动标的X坐标
int y;//移动标的的Y坐标
private void panelMouseDown(object sender, MouseEventArgs e)
{
MoveFlag = true;//已经按下.
x = e.X;//当前x坐标.
y = e.Y;//当前y坐标.
}
private void panelMouseMove(object sender, MouseEventArgs e)
{
if (e.Button == MouseButtons.Right)// if(e.Button == MouseButtons.Left)
{
if (MoveFlag)//只在鼠标按下时绘制移动
{
this.Left += Convert.ToInt16(e.X - x);//设置x坐标.
this.Top += Convert.ToInt16(e.Y - y);//设置y坐标.
}
}
}
private void panelMouseUp(object sender, MouseEventArgs e)
{
MoveFlag = false;
}
//注册事件
public Form()
{
InitializeComponent();
panel.MouseDown += panelMouseDown;
panel.MouseMove += panelMouseMove;
panel.MouseUp += panelMouseUp;
}
c# winform 控件 Panel 鼠标点击移动
最新推荐文章于 2023-02-15 14:27:09 发布