首页 > 编程语言 > 详细

Python设置电脑桌面壁纸

时间:2021-02-19 23:47:16      阅读:34      评论:0      收藏:0      [点我收藏+]

 

其实 Python 设置电脑桌面壁纸是很简单的,主要是调用 win32gui  这个库来实现的

 

代码如下:

import win32gui


def setWindowsImage(imgPath):
    win32gui.SystemParametersInfo(win32con.SPI_SETDESKWALLPAPER, imgPath, win32con.SPIF_SENDWININICHANGE)

 

亲测是有效的,我们可以对这个功能扩展一下,写一个可以自动切换壁纸的脚本

import win32api
import win32con
import win32gui
import time
from pathlib import Path
import random



def Windows_img(paperPath):
    # 读取注册表
    # k = win32api.RegOpenKeyEx(win32con.HKEY_CURRENT_USER, ‘Control panel\\Desktop‘, 0, win32con.KEY_SET_VALUE)

    # 在注册表中写入属性值: 0: 居中, 2: 拉伸,6:适应,10:填充
    # win32api.RegSetValueEx(k, ‘wapaperStyle‘, 0, win32con.REG_SZ, ‘2‘)
    # 在注册表中写入属性值: 0: 拉伸居中, 1: 平铺
    # win32api.RegSetValueEx(k, ‘Tilewallpaper‘, 0, win32con.REG_SZ, ‘0‘)

    # 刷新桌面
    win32gui.SystemParametersInfo(win32con.SPI_SETDESKWALLPAPER, paperPath, win32con.SPIF_SENDWININICHANGE)


# 更换壁纸
def changeWallpaper():
    # 间隔时间,壁纸路径
    changeTime = 1
    path = rd:\a

    p = Path(path)
    imgs = list(p.glob(**/*.jpg))
    wall_papers = []
    for img in imgs:
        wall_papers.append(str(img))

    # 随机打乱顺序
    random.shuffle(wall_papers)

    num = 0
    while True:
        Windows_img(wall_papers[num])
        time.sleep(changeTime)
        num += 1

        if num == len(wall_papers):
            num = 0

if __name__ == __main__:
    changeWallpaper()

 

 

由于在测试时,发现 修改注册表不成功,所以直接就注释了注册表单的操作

 

Python设置电脑桌面壁纸

原文:https://www.cnblogs.com/shiyixirui/p/14416917.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!