Я собираюсь переместить кнопку с помощью мыши. Все в порядке, но когда я нажимаю кнопку мыши на кнопку, слева и сверху кнопки (левый верхний угол) будет располагаться на курсоре pos.Перемещение элемента управления мышью
Я не хочу, чтобы это произошло. где ошибка в моем коде?
private void button1_MouseDown(object sender, MouseEventArgs e)
{
if (e.Button == System.Windows.Forms.MouseButtons.Left)
{
clicked = true;
}
}
private void button1_MouseMove(object sender, MouseEventArgs e)
{
if (clicked)
{
Point p = new Point();//in form coordinates
p.X = e.X + button1.Left;
p.Y = e.Y + button1.Top;
button1.Left = p.X;
button1.Top = p.Y ;
}
}
private void button1_MouseUp(object sender, MouseEventArgs e)
{
clicked = false;
}
ClientToScreen и ScreenToClient координаты –