~ Edito ~
12/03/2006 @ 13:39
Depuis la dernière mise à jour (qui remonte à... oulala plusieurs mois), un petit ménage de printemps s'impose. Ca tombe bien, c'est presque la période. Au menu, et progressivement sur les jours à venir, rafraîchissement de plusieurs fonctions et procédures, nouvelles APIs et nouveaux programmes.
~ Rechercher ~
~ Annuaire VB ~
~ Partenaires ~
|
Fonction GetCursorPos
Declare Function GetCursorPos Lib "user32" ( _ lpPoint As POINTAPI) As Long
Versions : . Windows 95/98 : Oui . Windows NT : A partir de 3.1 . Windows 2000/XP : OuiDescription : Cette fonction vous retourne la position du curseur de la souris, les coordonnées sont renvoyées sous forme d'une structure POINTAPI détaillée
ci-dessous.Retourne 'Vrai' si il n'y a pas eu d'erreur, sinon 'Faux'.
Type POINTAPI
x As Long
y As Long
End Type
Exemple d'utilisation :
' Exemple proposé par Michel Defert (micheldefert@free.fr)
' Placer un label sur la feuille, puis le code suivant :
' Position de X et Y par rapport a l'écran
Private Declare Function GetCursorPos Lib "user32" ( _
lpPoint As POINTAPI) As Long
' Position de X et Y par rapport a la fenètre et a GetCursorPos
Private Declare Function ScreenToClient Lib "user32" ( _
ByVal hwnd As Long, _
lpPoint As POINTAPI) As Long
Private Type POINTAPI
X As Long
Y As Long
End Type
' Affiche un point sous le curseur quand on clique sur la feuille
Private Sub Form_Click()
Dim pos As POINTAPI
GetCursorPos pos
ScreenToClient Me.hwnd, pos
Me.Label1 = "Position Horizontale X = : " & pos.X & vbCrLf & _
"Position Verticale Y = : " & pos.Y
Me.DrawWidth = 2 ' Pixel plus épais
Me.ScaleMode = vbPixels ' Feuille en mode Pixel
Me.PSet (pos.X, pos.Y), RGB(255, 0, 0) ' Affiche le pixel en rouge
Me.DrawWidth = 1 ' Pixel normal
Me.ScaleMode = vbTwips ' Feuille en mode Twip
End Sub
' Exemple proposé par int19h (Int19h@caramail.com)
' Placer un Timer sur la form, puis le code suivant :
Private Declare Function GetCursorPos Lib "user32" _
(lpPoint As PointAPI) As Long
Private Type PointAPI
x As Long
y As Long
End Type
Private Sub Form_Load()
Timer1.Interval = 100
End Sub
Private Sub Timer1_Timer()
Dim Tampon As PointAPI
GetCursorPos Tampon
Form1.Caption = "Mouse Position : " & Tampon.x & "-" & Tampon.y
End Sub
Retour à la liste des API |