root
=
Tk
.
tk
(
)
screenWidth
=
root
.
winfo_screenwidth
(
)
screenHeight
=
root
.
winfo_screenheight
(
)
这种形式在不同的win缩放情况下回返回完全相同的值,这对于冻结屏幕的操作是致命的
在程序中使用以下代码可以获取到真实的分辨率,包含了缩放结果
import ctyps
user32 = ctypes.windll.user32
user32.SetProcessDPIAware(2)
[screenWidth, screenHeight] = [user32.GetSystemMetrics(0), user32.GetSystemMetrics(1)]
SetProcessDPIAware 入参说明
参考连接
https://stackoverflow.com/questions/3129322/how-do-i-get-monitor-resolution-in-python
问题描述目前在做的一款截图加Ocr的软件,在适配不同的屏幕缩放时发现获取到的屏幕分辨率有问题import Tkinter as Tkroot = Tk.tk()screenWidth = root.winfo_screenwidth()screenHeight = root.winfo_screenheight()这种形式在不同的win缩放情况下回返回完全相同的值,这对于冻结屏幕的操作是致命的解决方法在程序中使用以下代码可以获取到真实的分辨率,包含了缩放结果import ctypsus