VB.net フォームをなめらかに移動する方法
フォームをなめらかに移動する方法はないでしょうか?
以下のコードのように、Locationで位置を変更すると、カクカク移動してしまいます。
ご存知の方おしえてください。どうぞよろしくお願いいたします。
Private Sub Form1_Mousemove(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles MyBase.MouseMove
Dim WorkingArea As Rectangle = Screen.PrimaryScreen.WorkingArea
Dim MousePos As Point = Me.PointToClient(Windows.Forms.Cursor.Position)
'上に移動
If Me.Size.Height * 0.8 < MousePos.Y And Me.Location.Y > 0 Then
Me.Location = New Point(Me.Location.X, Me.Location.Y - 20)
End If
'下に移動
If Me.Size.Height * 0.2 > MousePos.Y And (Me.Location.Y + Me.Size.Height) < WorkingArea.Height Then
Me.Location = New Point(Me.Location.X, Me.Location.Y + 20)
End If
'左に移動
If Me.Size.Width * 0.8 < MousePos.X And Me.Location.X > 0 Then
Me.Location = New Point(Me.Location.X - 20, Me.Location.Y)
End If
'右に移動
If Me.Size.Width * 0.2 > MousePos.X And (Me.Location.X + Me.Size.Width) < WorkingArea.Width Then
Me.Location = New Point(Me.Location.X + 20, Me.Location.Y)
End If
End Sub