Trik ini mirip dengan
perintah SetFocus tapi yang berbeda
pada trik ini, pointer mouse yang otomatis berpindah/fokus pada objek yang akan
anda tuju berikutnya.
1.
Bukalah program Visual Basic dan
mulailah dengan form baru.
2.
Masukkan tiga komponen CommandButoon ke dalam area form
sehingga tampak seperti gambar dibawah ini :
3.
Kemudian ubahlah propertis Name masing – masing komponen tombol
menjadi Button dan propertis Index sesuaikan dengan nilai Caption pada gambar di atas.
4.
Aktifkan tampilan jendela kode dan
ketiklah perintah di bawah ini pada bagian General.
1
2
3
4
5
6
7
|
Option
Explicit
Private
Declare Function SetCursorPos Lib "user32" (ByVal X As Long, ByVal
Y As Long) As Long
Private
Declare Function ClientToScreen Lib "user32" (ByVal hwnd As Long,
titik As titikAPI) As Long
Private
Type titikAPI
X As Long
Y As Long
End
Type
|
8
9
10
11
12
|
Private
Sub fokusmouse(ByVal ctl As Control)
Dim point As titikAPI
ClientToScreen ctl.hwnd, point
SetCursorPos point.X + ScaleX(ctl.Width /
2, ScaleMode, vbPixels), point.Y + ScaleY(ctl.Height / 2, ScaleMode,
vbPixels)
End
Sub
|
Keterangan
Kode
1
2-7
8
9
10-11
|
Perintah
ini akan mewajibkan anda mendeklarasikan semua variabel yang digunakan.
Mendeklarasikan
beberapa fungsi API dan membuat sebuah tipe data dengan nama titikAPI dengan nilai X dan Y dengan tipe data Long.
Membuat
fungsi dengan nama FocusMouse
dengan nilai input ctl dengan tipe
data Control.
Mendeklarasikan
variabel poin dengan tipe data titikAPI yang telah kita buat
sebelumnya.
Mendapatkan
posisi koordinat layar supaya dapat dialokasikan dengan nilai awal 0 dan
meletakkan posisi krusor mouse pada layar menggunakan koordinat (pixel).
|
5.
Kembali ketampilan desain form dan klik
ganda salah satu tombol, kemudian ketiklah perintah ini.
1
2
3
|
Private
Sub button_Click(Index As Integer)
fokusmouse
button((Index + 1) Mod 3)
End
Sub
|
Keterangan
Kode
2
|
Memanggil
fungsi FocusMouse dengan posisi
sesuai dengan nilai Index pada
masing – masing tombol. Fungsi Mod
digunakan untuk mendapatkan nilai sisa pembagian.
|
Untuk mencoba hasilnya,
tekan F5 pada keyboard anda.
EmoticonEmoticon