Python如何获取Win7,Win10系统缩放大小

yipeiwu_com6年前Python基础

这篇文章主要介绍了Python如何获取Win7,Win10系统缩放大小,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

使用pywin32调用windows系统接口。

利用GetDeviceCaps获取指定设备的设备信息。

具体参考https://docs.microsoft.com/en-us/windows/desktop/api/wingdi/nf-wingdi-getdevicecaps

实现如下

def get_dpi():
  hDC = win32gui.GetDC(0)
  dpi = win32print.GetDeviceCaps(hDC, win32con.LOGPIXELSX)
  return dpi

win10下。如果有缩放,以上代码总只能获取到dpi为96,好像没什么卵用

以下代码能获取到屏幕实际像素,即使缩放了。也能正确获取

def get_dpi():
  hDC = win32gui.GetDC(0)
  #横向分辨率
  HORZRES = win32print.GetDeviceCaps(hDC, win32con.DESKTOPHORZRES)
  #纵向分辨率
  VERTRES = win32print.GetDeviceCaps(hDC, win32con.DESKTOPVERTRES)
  return HORZRES,VERTRES

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python使用shelve模块实现简单数据存储的方法

本文实例讲述了Python使用shelve模块实现简单数据存储的方法。分享给大家供大家参考。具体分析如下: Python的shelve模块提供了一种简单的数据存储方案,以dict(字典)...

python pyinstaller打包exe报错的解决方法

python pyinstaller打包exe报错的解决方法

今天用python 使用pyinstaller打包exe出现错误 环境pyqt5 + python3.6 32位 在导入pyqt5包之前加上如下代码 import sys impo...

python3 打开外部程序及关闭的示例

如下所示: import os import time import subprocess subprocess.Popen(r'cmd') print('打开成功') time...

Python Numpy 数组的初始化和基本操作

Python 是一种高级的,动态的,多泛型的编程语言。Python代码很多时候看起来就像是伪代码一样,因此你可以使用很少的几行可读性很高的代码来实现一个非常强大的想法。 一.基础: Nu...

安装Python和pygame及相应的环境变量配置(图文教程)

安装Python和pygame及相应的环境变量配置(图文教程)

Hello,Everyone! Python是个好东西!好吧,以黎某人这寒碜的赞美之词,实在上不了台面,望见谅。那我们直接来上干货吧。 第一步:下载Python安装包https://ww...