为何Tkinter中winfo_screenmmwidth()/winfo_screenmmheight()返回异常数值?
异常成因解析
winfo_screenmmwidth()和winfo_screenmmheight()返回的是屏幕物理尺寸(单位:毫米),并非你需要的像素分辨率(1920x1080),二者属于不同的度量维度,你混淆了这两个概念才会觉得数值“异常”。- 你用到的3.78/3.779换算系数,本质是屏幕DPI的换算值:1英寸≈25.4毫米,若你的屏幕DPI为Windows默认的96,则96÷25.4≈3.779,和你用的系数完全吻合——用物理尺寸毫米数乘以这个系数,就是把物理尺寸转换成了像素尺寸。
- 系统返回的508x286毫米是合理的物理尺寸:508÷25.4=20英寸,286÷25.4≈11.26英寸,这对应常见的21.5英寸左右的屏幕规格,是屏幕实际的物理大小。
内容的提问来源于stack exchange,提问作者LG Блоха
相关产品推荐
相关产品推荐

