на форму помещаеться panel, на нее еще одна panel и на ней размащаються Label. И Label надо таскать мышой (C#)
Пошел двумя путями:
1. вешал обработчик на перемещении мыша на Label
2. использовал Drag&Drop
по событию MouseDown
1. запоминаеться координата Х (можно и координату Y, но она мне не нужна)
isDragging = true;
2. вызываеться panel1.DoDragDrop( label1, DragDropEffects.Move);
и в методе panel1.DragEnter запоминаеться координата Х и
isDragging = true;
Проблема:
1. private void label_MouseMove(object sender, System.Windows.Forms.MouseEventArgs e)
{
if (isDragging)
{
int iX = 0;
iX = e.X — iOldX;
string a = sender.ToString();
label1.Left = label1.Left + iX;
}
}
2.private void panel1_DragOver(object sender, System.Windows.Forms.DragEventArgs e)
{
int a=0;
iX = e.X — iOldX;
if (isDragging)
{
label1.Left = label1.Left + a;
}
}
при выполнении этих методов объект начинает прыгать, исчезать, и делать все, чтоб не перемещаться за мышой ...
помогите плиз ... неделю уже вешаюсь ...
25.12.03 12:08: Перенесено модератором из '.NET' — AVK