【发布时间】:2021-04-27 14:20:00
【问题描述】:
我正在尝试根据分辨率调整我的窗口应用程序的大小。 正如我们在屏幕截图中看到的那样,我的计算机分辨率为 3840 x 2160,缩放比例为 300%。 使用此代码:
from win32api import GetSystemMetrics
import win32con
print("Width =", GetSystemMetrics(win32con.SM_CXVIRTUALSCREEN))
print("Height =", GetSystemMetrics(win32con.SM_CYVIRTUALSCREEN))
我明白了:
Width = 1280
Height = 720
因为缩放
【问题讨论】:
-
获取相同的值
-
据我所知缩放与分辨率无关
-
问题是,如果我在尝试使用我显示的代码获得分辨率时使用缩放 300%,我将获得 3840/3= 1280 x 2160/3 = 720。对于分辨率1920 x 1080,缩放比例为 150%,我再次得到 1280 x 720 而不是 1920 x 1080。@BakkarBakkar
-
win32 api/con 只取“屏幕”的大小,在您选择的缩放比例下,其面积等于您的。如果要针对给定的缩放比例进行调整,只需将 api/con 结果乘以适当的因子(在本例中为 3)。
标签: python python-3.x windows screen-resolution