J'ai vu un thread sur un MSDN forum où il y avait un problème avec les entiers 32 bits vs. 64 bits. Je ne suis pas sûr si c'est mon problème, mais il semble que ce code devrait fonctionner, donc je suis un peu confus. Je cours VB6 en mode de compatibilité (XP SP2) dans Windows 7 64-bit.GetCursorPos ne renvoie que la valeur x
Type POINTAPI ' This holds the logical cursor information
x As Integer
y As Integer
End Type
Public Declare Function GetCursorPos Lib "user32" (lpPoint As POINTAPI) As Long
En Timer1_Timer()
...
Dim mousePos As POINTAPI
Call GetCursorPos(mousePos)
MsgBox mousePos.x & " " & mousePos.y
Cette boîte de message indique la valeur correcte pour la coordonnée x de la souris, mais il montre "0"
pour y
, peu importe où la souris est sur l'écran . En outre, GetCursorPos()
renvoie 1
.
de Whoops. Je pensais que l'entier aurait été 32 bits et long 64 bits. Intéressant. Merci! – TimFoolery
@Michael report de l'ère de la programmation 16 bits –