Rabu, 13 April 2011

Mendapatkan dan Mengubah Posisi Mouse

Kode-kode berikut ini akan menunjukkan bagaimana cara mendapatkan dan mengubah posisi kursor mouse.

[ VB 6.0 ]
Buat Form baru dengan 2 buah TextBox, 2 buah CommandButton, dan 1 buah Timer (Enabled=True; Interval=10) didalamnya.
Di bagian '(Declarations)' dari Form ketikkan :
Private Declare Function GetCursorPos Lib "user32.dll" (ByRef lpPoint As POINTAPI) As Long
Private Declare Function SetCursorPos Lib "user32" (ByVal x As Long, ByVal y As Long) As Long
Private Declare Function ClientToScreen Lib "user32.dll" (ByVal hwnd As Long, ByRef lpPoint As POINTAPI) As Long
Private Type POINTAPI
x As Long
y As Long
End Type

Berikut ini cara untuk mendapatkan posisi mouse, dimana nilai posisinya akan ditampilkan ke TextBox. Ketikkan kode berikut di bagian 'Timer1_Timer'.
Dim p As POINTAPI
GetCursorPos p
Text1.Text = p.x
Text2.Text = p.y
Jalankan aplikasi.

Untuk megubah posisi mouse gunakan kode :
SetCursorPos x, y
Gantikan x sesuai dengan ukuran panjang layar. Misal panjangnya 1024, Anda bisa gantikan dengan nilai 0 s/d 1023. dan Gantikan y sesuai dengan ukuran lebar layar. Misal lebarnya 768, Anda bisa gantikan dengan nilai 0 s/d 767.

Sedangkan bila Anda ingin mengubah posisi mouse ke kontrol tertentu, ikuti langkah berikut. Sebagai contoh posisi mouse akan diubah ke tengah kontrol Command1, ketikkan kode berikut di bagian 'Command2_Click' :
Dim p As POINTAPI
ClientToScreen Command1.hwnd, p
SetCursorPos p.x + ((Command1.Width \ 2) \ Screen.TwipsPerPixelX), p.y + ((Command1.Height \ 2) \ Screen.TwipsPerPixelY)
Jalankan aplikasi dan klik Command2.



[ VB .NET ]
Buat Form baru dengan 2 buah TextBox, 2 buah Button, dan 1 buah Timer (Enabled=True; Interval=10) didalamnya.
Di bagian '(Declarations)' dari Form ketikkan :
Private Declare Function GetCursorPos Lib "user32.dll" (ByRef lpPoint As POINTAPI) As Integer
Private Declare Function SetCursorPos Lib "user32" (ByVal x As Integer, ByVal y As Integer) As Integer
Private Declare Function ClientToScreen Lib "user32.dll" (ByVal hwnd As Integer, ByRef lpPoint As POINTAPI) As Integer
Private Structure POINTAPI
Dim x As Integer
Dim y As Integer
End Structure

Berikut ini cara untuk mendapatkan posisi mouse, dimana nilai posisinya akan ditampilkan ke TextBox. Ketikkan kode berikut di bagian 'Timer1_Tick'.
Dim p As POINTAPI
GetCursorPos(p)
TextBox1.Text = p.x
TextBox2.Text = p.y
Jalankan aplikasi.

Untuk megubah posisi mouse gunakan kode :
SetCursorPos(x, y)
Gantikan x sesuai dengan ukuran panjang layar. Misal panjangnya 1024, Anda bisa gantikan dengan nilai 0 s/d 1023. dan Gantikan y sesuai dengan ukuran lebar layar. Misal lebarnya 768, Anda bisa gantikan dengan nilai 0 s/d 767.

Sedangkan bila Anda ingin mengubah posisi mouse ke kontrol tertentu, ikuti langkah berikut. Sebagai contoh posisi mouse akan diubah ke tengah kontrol Button1, ketikkan kode berikut di bagian 'Button2_Clickk' :
Dim p As POINTAPI
ClientToScreen(Button1.Handle.ToInt32, p)
SetCursorPos(p.x + (Button1.Width \ 2), p.y + (Button1.Height \ 2))
Jalankan aplikasi dan klik Button2.

Label: , , ,

0 Komentar:

Posting Komentar

Pengunjung yang baik selalu meninggalkan jejak berupa komentar. :)

Berlangganan Posting Komentar [Atom]

<< Beranda