Membatasi Ruang Gerak Mouse Hanya Di Dalam Form

Membatasi Ruang Gerak Mouse Hanya Di Dalam Form

Kali ini saya ingin membagikan code yang mampu membuat mouse tidak bisa lari kemana2, alias ruang gerak mouse nya dibatasi hanya bisa bergerak di dalam form tertentu saja.

Untuk mulai praktek membuatnya, kita hanya butuh 1 CheckBox saja di dalam form & susun menjadi seperti gambar berikut :

Kemudian buka code area, hapus semua code yang ada & paste-kan code berikut :

Private Sub Check1_Click()
Dim r As posisi
Dim p As titik

If Check1.Value = vbChecked Then
p.x = 0
p.y = 0
ClientToScreen hwnd, p
r.kiri = p.x
r.atas = p.y
p.x = ScaleWidth
p.y = ScaleHeight
ClientToScreen hwnd, p
r.kanan = p.x
r.bawah = p.y
MousePointer = vbHourglass
ClipCursor r
Else
MousePointer = vbDefault
ClipCursor ByVal 0&
End If
End Sub

Kemudian buat sebuah module, hapus code yang ada dan paste-kan code berikut :

Option Explicit
Public Type posisi
kiri As Long
atas As Long
kanan As Long
bawah As Long
End Type
Public Type titik
x As Long
y As Long
End Type
Public Declare Function ClipCursor Lib "user32" (lpRect As Any) As Long
Public Declare Function ClientToScreen Lib "user32" (ByVal hwnd As Long, point As titik) As Long

Untuk mulai menjalankannya, coba beri tanda checklist di CheckBox.
Ketika CheckBox ter checklis, maka mouse tidak bisa lari kemana2. 😀
Ketika Checkbox tidak ter checklist, maka mouse kembali seperti semula.

Mudah bukan ?..
Selamat berkreasi… 🙂

Advertisement

No comments.

Leave a Reply