Kod:
Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long
Private Const WM_SYSCOMMAND = &H112
Private Const SC_SIZE = &HF000&
Kod:
Private Declare Function ReleaseCapture Lib "user32" () As Long
Dim Hareket As Byte
Private Sub Command1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
ReleaseCapture
SendMessage Command1.hwnd, WM_SYSCOMMAND, SC_SIZE + Hareket, 0
End Sub
Private Sub Command1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
Const parca = 100
If ((X >= Command1.Width - parca) And (Y >= Command1.Height - parca)) Then
Hareket = 8
ElseIf ((X >= Command1.Width - parca) And (Y > parca)) Then
Hareket = 2
ElseIf ((X >= Command1.Width - parca) And (Y <= parca)) Then
Hareket = 5
ElseIf ((X > parca) And (Y >= Command1.Height - parca)) Then
Hareket = 6
ElseIf ((X <= parca) And (Y >= Command1.Height - parca)) Then
Hareket = 7
ElseIf ((X > parca) And (Y <= parca)) Then
Hareket = 3
ElseIf ((X <= parca) And (Y > parca)) Then
Hareket = 1
ElseIf ((X <= parca) And (Y <= parca)) Then
Hareket = 4
Else
Hareket = 9
End If
Select Case Hareket
Case 4, 8: Command1.MousePointer = vbSizeNWSE 'kuzey batı - güney doğu
Case 7, 5: Command1.MousePointer = vbSizeNESW 'kuzey doğu - güney batı
Case 3, 6: Command1.MousePointer = vbSizeNS 'kuzey - güney
Case 1, 2: Command1.MousePointer = vbSizeWE 'doğu - batı
Case Else: Command1.MousePointer = vbSizeAll
End Select
End Sub