EzioA 发表于 2017-8-22 23:11:37

关于显示屏有多少个像素点

我的显示屏分辨率是1920*1080,但是在编写第47讲的作业时,用到GetCursorPos函数,鼠标移到右下角,函数的返回值是x = 1535, y = 863
按理说返回值应该是1920和1080才对呀
返回值和实际值对不上,显示的颜色和鼠标所指处的颜色也对不上,这个BUG一直改不过来,求解。

Charles未晞 发表于 2017-8-23 06:59:15

You are subject to DPI virtualization. Your application has not declared itself aware of high DPI and you have a font scaling of 125%.
If you want to avoid DPI virtualization either add the high DPI aware option to the application manifest or call either SetProcessDPIAware or SetProcessDPIAwareness.

Charles未晞 发表于 2017-8-23 07:00:12

import ctypes user32 = ctypes.windll.user32 user32.SetProcessDPIAware()加上这个试试

Charles未晞 发表于 2017-8-23 07:01:02

很少有人遇到这个问题。。。我获取的结果是对的

EzioA 发表于 2017-8-23 09:45:38

Charles未晞 发表于 2017-8-23 07:01
很少有人遇到这个问题。。。我获取的结果是对的

大佬呀,完美解决了!!
这个BUG搞了我2个小时,什么资料都查不到{:10_266:}
页: [1]
查看完整版本: 关于显示屏有多少个像素点