• Python设置电脑桌面壁纸


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

    代码如下:

    import win32api
    import win32con
    import win32gui
    
    
    def setWindowsImage(imgPath):
        # 打开注册表
        k = win32api.RegOpenKeyEx(win32con.HKEY_CURRENT_USER, 'Control panel\Desktop', 0, win32con.KEY_ALL_ACCESS)
    
        # 设置项值
        win32api.RegSetValueEx(k, 'Wallpaper', 0, win32con.REG_SZ, '2')
        win32api.RegSetValueEx(k, 'TileWallpaper', 0, win32con.REG_SZ, '0')
    
        # 关闭注册表
        win32api.RegCloseKey(k)
    
        # 刷新桌面
        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_ALL_ACCESS)
    
        # 设置项值
        win32api.RegSetValueEx(k, 'Wallpaper', 0, win32con.REG_SZ, '2')
        win32api.RegSetValueEx(k, 'TileWallpaper', 0, win32con.REG_SZ, '0')
    
        # 关闭注册表
        win32api.RegCloseKey(k)
    
        # 刷新桌面
        win32gui.SystemParametersInfo(win32con.SPI_SETDESKWALLPAPER, paperPath, win32con.SPIF_SENDWININICHANGE)
    
    
    # 更换壁纸
    def changeWallpaper():
        # 间隔时间,壁纸路径
        changeTime = 1
        path = r'd: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()
  • 相关阅读:
    GitHub的本地与远程
    linux PDF转换
    css文字样式与div
    CSS属性(pading margin)
    Q:table返回无数据点击排序无数据消失问题
    nginx 学习二(配置项)
    nginx学习一
    JS防抖节流
    通过node实现阿里云短信接口,并将手机号缓存,通过Redis过期时间限制频繁发短信
    web框架express学习三
  • 原文地址:https://www.cnblogs.com/shiyixirui/p/14416917.html
Copyright © 2020-2023  润新知