PDA

View Full Version : سوال: جابجایی label با ماوس



antisocial
شنبه 03 مرداد 1388, 11:39 صبح
سلام
چه طور میشه با استفاده از ماوس به کاربر این امکان رو داد که یک لیبل رو جابه جا کنه؟
ممنون میشم راهنمایی کنید

وحید پیرمرادیان
شنبه 03 مرداد 1388, 12:07 عصر
سلام




private void Form1_MouseMove(object sender, MouseEventArgs e)
{
label1.Location = e.Location;

}



موفق باشید.

antisocial
شنبه 03 مرداد 1388, 12:19 عصر
ممنون اما منظورم امکان Drag&Drop بود.

RED-C0DE
شنبه 03 مرداد 1388, 12:22 عصر
یک Label ب نام label1 روی Form1 قرار داره :


public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}

bool _mouseDown = false;
int _lastX, _lastY;
private void label1_MouseDown(object sender, MouseEventArgs e)
{
if (e.Button == MouseButtons.Left)
{
_lastX = e.X;
_lastY = e.Y;
_mouseDown = true;
}
}

private void label1_MouseUp(object sender, MouseEventArgs e)
{
_mouseDown = false;
}

private void label1_MouseMove(object sender, MouseEventArgs e)
{
if (_mouseDown)
{
int x = label1. Left + (e.X - _lastX);
int y = label1.Top + (e.Y - _lastY);
label1.Location = new Point(x, y);
}
}
}