我在MSDN 论坛上看到一个线程,其中存在 32 位与 64 位整数的问题。我不确定这是否是我的问题,但似乎这段代码应该可以工作,所以我有点困惑。
我在 Windows 7 64 位中以兼容模式 (XP SP2) 运行 VB6。
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
在Timer1_Timer()
...
Dim mousePos As POINTAPI
Call GetCursorPos(mousePos)
MsgBox mousePos.x & " " & mousePos.y
此消息框显示鼠标 x 坐标的正确值,但无论鼠标在屏幕上的哪个位置,它都显示"0"
为。y
还有,GetCursorPos()
正在回归1
。