Python 官方文档:入门教程 => 点击学习
目录工具安装完整脚本输出的结果存在的问题工具安装 主要调用win32库实现分辨率获取和读写,需要安装pywin32 示例中是从execl列表中读取需要设置的分辨率,需要安装xlrd
主要调用win32库实现分辨率获取和读写,需要安装pywin32
示例中是从execl列表中读取需要设置的分辨率,需要安装xlrd
用到的execl分辨率列表如下:
pip install pywin32
pip install xlrd
import win32api,win32con,time,xlrd
"""
Author:NoamaNelson
Date:2019-11-26
Discription:python sets the resolution of windows computer graphics card and obtains the resolution
"""
book1 = xlrd.open_workbook('常见分辨率.xlsx') # 打开表格
q = book1.sheet_by_index(0) # 使用索引的方式获取sheet1工作簿
i = 0
while(i<=5):
print("第%d次设置"%i)
mwidth = str(q.cell_value(i+1,0)) # 获取单元格中的值
nwidth = mwidth.split(".")[0] # 获取的值为float,转换成字符串然后进行分割取整
WidthSet = int(nwidth) # 从表格中获取的分辨率宽的值
#print(WidthSet)
mhigth = str(q.cell_value(i+1,1)) # 获取单元格中的值
nhigth = mhigth.split(".")[0] # 获取的值为float,转换成字符串然后进行分割取整
HeightSet = int(nhigth) # 从表格中获取的分辨率宽的值
#print(HeightSet)
ResoLutionSet = win32api.EnumDisplaySettings(None, 0) # 调用win32api接口,获取显示设备信息
ResoLutionSet.PelsHeight = HeightSet # 设置分辨率高
ResoLutionSet.PelsWidth = WidthSet # 设置分辨率宽
print("设置的分辨率宽: %d, 设置的分辨率高: %d, 即设置的分辨率为:%d x %d" % (WidthSet, HeightSet, WidthSet, HeightSet))
ResoLutionSet.BitsPerPel = 32 # 显示设备的颜色分辨率
ResoLutionSet.DisplayFixedOutput = 2 # 设置分辨率后拉伸画面,否则切换到小分辨率时,屏幕只在中间一小块
if (win32api.ChangeDisplaySettings(ResoLutionSet, 0)) == 0: # DISP_CHANGE_SUCCESSFUL
win32api.ChangeDisplaySettings(ResoLutionSet, 0) # 设置生效
else:
win32api.ChangeDisplaySettings(None, 0) # 恢复默认
screenNum = win32api.GetSystemMetrics(win32con.SM_CMONITORS)
print("显示设备的总数量为: %d" % screenNum)
aScreenWidth = win32api.GetSystemMetrics(win32con.SM_CXVIRTUALSCREEN)
aScreenHeight = win32api.GetSystemMetrics(win32con.SM_CYVIRTUALSCREEN)
print("当前屏幕总的分辨率为:%d × %d " % (aScreenWidth, aScreenHeight))
WidthGet = win32api.GetSystemMetrics(win32con.SM_CXSCREEN) # 获得屏幕分辨率X轴
HeightGet = win32api.GetSystemMetrics(win32con.SM_CYSCREEN) # 获得屏幕分辨率Y轴
print ("获取的分辨率宽: %d, 获取的分辨率高: %d, 即获取的分辨率为:%d x %d" % (WidthGet, HeightGet, WidthGet, HeightGet))
time.sleep(3)
i += 1
目前使用这种方式,只能设置显卡列表支持的分辨率,不支持自定义分辨率。不知道有什么更好的方式,有知道的大牛给指导下。
到此这篇关于Python实现设置显示屏分辨率的文章就介绍到这了,更多相关Python设置显示屏分辨率内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!
--结束END--
本文标题: Python实现设置显示屏分辨率
本文链接: https://www.lsjlt.com/news/177560.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
下载Word文档到电脑,方便收藏和打印~
2024-03-01
2024-03-01
2024-03-01
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0