U sledeฤem tekstu videฤete kako da dobijete poziciju kurzora na ekranu uz pomoฤ Windows API funkcije GetCursorPos.
GetCursorPos funkcija javlja poziciju pokazivaฤa miลกa bilo gde na ekranu, tj. svaka Visual Basic aplikacija je ograniฤena u javljanju pozicije i to svojim sopstvenim granicama na ekranu. Ovo u stvari znaฤi da naลกa aplikacija „ne zna“ gde se nalazi pokazivaฤ ukoliko on nije iznad forme same aplikacije. Ali Windows u svakom trenutku zna tu poziciju i to preko API funkcije GetCursorPos.
U sledeฤem listingu videฤete izvorni kod jedne funkcije koja ilustruje koriลกฤenje ove API funkcije. Ovu funkciju ubacite u modul, pa ฤe nam ova funkcija vratiti string koji nam govori o lokaciji pokazivaฤa.
01 Public Function ReportMousePos() As String
02
03 Dim MyPointAPI As POINTAPI
04 Dim l As Long
05 Dim strReport As String
06
07 ‘Poziv API funkcije
08 l = GetCursorPos(MyPointAPI)
09
10 ‘String koji se vraฤa
11 strReport = „X=“ & CStr(MyPointAPI.X) & „, “
12 strReport = strReport & „Y= “ & CStr (MyPointAPI.Y)
13
14 If l > 0 Then
15 ReportMousePos = strReport
16 Else
17 ReportMousePos = „Error“
18 End If
19
20 End Function
Zapazite da se u treฤoj liniji inicijalizuje POINTAPI. Deklaracija tipa podatka i deklaracija funkcije GetCursorPos se smeลกtaju u sekciju General Declarations modula. Da bi prikazali vraฤeni podatak iskoristiฤemo jednu labelu – „lblMousePos“ i pomoฤu Timer kontrole uspostaviฤemo reลพim pozivanja funkcije.
Private Sub Timer1_Timer()
lblMousePos.Caption = ReportMousePos()
End Sub
GetCursorPos ne vraฤa podatak o poziciji sve dok je ne pozovemo. Zato smo iskoristili Timer kontrolu da inicijalizujemo funkciju i to svakih 1/10 sekunde.
Pratite Krstaricu na www.krstarica.com