python - Win32api 没有在 python 中使用 GetCursorPos() 给出正确的坐标

标签 python python-2.7 winapi pywin32

当使用 pywin 的 win32api 时,我得到的光标位置值不正确。我的屏幕分辨率是 1920x1080,但是当我使用 GetCursorPos() 时,我在左上角有 (0,0),在右下角有 (1535,863)。我使用的代码如下:

import win32api

def getCursor():
    print win32api.GetCursorPos()

我在 Windows 10 上使用 python 2.7 尝试此操作,但我在 Windows 8 上的 python 2.6 中也遇到此错误。这个问题有任何解决方案或解决方法吗?

最佳答案

您受制于 DPI virtualization .您的应用程序尚未声明自己知道高 DPI,并且您的字体缩放比例为 125%。

如果您想避免 DPI 虚拟化,请将高 DPI 感知选项添加到应用程序 list 或调用 SetProcessDPIAwareSetProcessDPIAwareness

关于python - Win32api 没有在 python 中使用 GetCursorPos() 给出正确的坐标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54293398/

相关文章:

python - 在用于服务模型的 Tensorflow 中,服务输入函数应该做什么

python - 获取文件的关联文件类型图标

windows - 在 Windows 上以编程方式读取程序的页面错误计数

c++ - 如何将菜单项更改为选中或未选中?

c - Hook NtReadFile。更改文字

python - 为什么我的解决方案无法解决需要多于 1 步的棋盘的 8puzzle 问题?

python - OpenCV Python cv2.BackgroundSubtractor 参数

python - 了解 cv2.threshold() 函数

python-2.7 - 有没有办法使用 ssh 和 Python 将二进制流传输到远程服务器?

python - 通过在 python 中获取用户输入来编辑文件?