Как сохранить конечное место положение перемещаемых объектов?
Код:
Private Sub PictureBox_MouseMove(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs)
If Control.MouseButtons = Windows.Forms.MouseButtons.Left Then
CType(sender, PictureBox).Left = Control.MousePosition.X - Me.Left - CType(sender, PictureBox).Width
CType(sender, PictureBox).Top = Control.MousePosition.Y - Me.Top - CType(sender, PictureBox).Height
End If
End Sub
Private Sub PictureBox1_Paint(ByVal sender As System.Object, ByVal e As System.Windows.Forms.PaintEventArgs) Handles PictureBox1.Paint
AddHandler (PictureBox1.MouseMove), AddressOf PictureBox_MouseMove
Me.Controls.Add(PictureBox1)
End Sub
If Control.MouseButtons = Windows.Forms.MouseButtons.Left Then
CType(sender, PictureBox).Left = Control.MousePosition.X - Me.Left - CType(sender, PictureBox).Width
CType(sender, PictureBox).Top = Control.MousePosition.Y - Me.Top - CType(sender, PictureBox).Height
End If
End Sub
Private Sub PictureBox1_Paint(ByVal sender As System.Object, ByVal e As System.Windows.Forms.PaintEventArgs) Handles PictureBox1.Paint
AddHandler (PictureBox1.MouseMove), AddressOf PictureBox_MouseMove
Me.Controls.Add(PictureBox1)
End Sub
Мб хотя бы подскажите как выцепить координаты конечного местоположения объектов? чтобы их вылавливало уже во время отладки
по принципу - нажата левая кнопка - ставим флаг, тащим - отпущена - проверяем флаг - если он был, сбрасываем его и записываем координаты из
CType(sender, PictureBox).Left
CType(sender, PictureBox).Top
и так далее (и ширина и высота тоже там есть)....
Принцип хорошего стиля - функция должна быть максимально автономной, получать все нужное для работы из параметров, и возвращать все в одном результате.
Опять же - это плохо добавлять обработчик эвента в функции, которая вызывается многократно.
Вызов обработчика будет умножаться. Но если вы хотите сделать программу, которая будет иногда тормозить и падать, то конечно....