您好,登录后才能下订单哦!
这篇文章主要介绍python如何实现windows壁纸定期更换功能,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
安装pywin32 extensions
安装python2.7后,然后管理员的方式运行cmd,进入python的scripts目录,我的是
C:\Python27\Scripts
cd /d C:\Python27\Scripts
然后敲入:python pywin32_postinstall.py -install(先确保在环境变量PATH中设置好了python.exe的目录)
C:\Python27\Scripts>python pywin32_postinstall.py -install Copied pythoncom27.dll to C:\Windows\SysWOW64\pythoncom27.dll Copied pythoncomloader27.dll to C:\Windows\SysWOW64\pythoncomloader27.dll Copied pywintypes27.dll to C:\Windows\SysWOW64\pywintypes27.dll Registered: Python.Interpreter Registered: Python.Dictionary Registered: Python -> Software\Python\PythonCore\2.7\Help[None]=None -> Software\Python\PythonCore\2.7\Help\Pythonwin Reference[None]='C:\\Python27\\ Lib\\site-packages\\PyWin32.chm' Pythonwin has been registered in context menu Shortcut for Pythonwin created Shortcut to documentation created The pywin32 extensions were successfully installed.
这样,pywin32就完成了安装。
安装PIL
PIL即是Python Image Lib。
在网上下载PIL: http://www.pythonware.com/products/pil/。我下载的是PIL-1.1.7.win32-py2.7.exe,双击运行即可。
注:如果要使用pip安装,那么命令行中输入的不是pip,而是pip2.7,如下:
C:\Python27\Scripts>pip2.7 install
You must give at least one requirement to install (see "pip help install")
关键函数
下面的函数帮助信息都能在PyWin32.chm中看见。
win32gui.SystemParametersInfo
SystemParametersInfo(Action, Param, WinIni) Queries or sets system-wide parameters. This function can also update the user profile while setting a parameter. Parametersundefined Action : int System parameter to query or set, one of the SPI_GET* or SPI_SET* constants Param=None : object depends on action to be taken WinIni=0 : int Flags specifying whether change should be permanent, and if all windows should be notified of change. Combination of SPIF_UPDATEINIFILE, SPIF_SENDCHANGE, SPIF_SENDWININICHANGE
win32api.RegOpenKeyEx
PyHKEY = RegOpenKeyEx(key, subKey, reserved , sam ) Opens the specified key. Parametersundefined key : PyHKEY/int An already open key, or any one of the following win32con constants: HKEY_CLASSES_ROOT HKEY_CURRENT_USER HKEY_LOCAL_MACHINE HKEY_USERS subKey : string The name of a key that this method opens. This key must be a subkey of the key identified by the key parameter. If key is one of the predefined keys, subKey may be None. In that case, the handle returned is the same key handle passed in to the function. reserved=0 : int Reserved. Must be zero. sam=KEY_READ : int Specifies an access mask that describes the desired security access for the new key. This parameter can be a combination of the following win32con constants: KEY_ALL_ACCESS KEY_CREATE_LINK KEY_CREATE_SUB_KEY KEY_ENUMERATE_SUB_KEYS KEY_EXECUTE KEY_NOTIFY KEY_QUERY_VALUE KEY_READ KEY_SET_VALUE KEY_WRITE
程序
接下来就是coding:
set.py:
import Image import win32api, win32gui, win32con def setWallPaper(pic): # open register regKey = win32api.RegOpenKeyEx(win32con.HKEY_CURRENT_USER,"Control Panel\\Desktop",0,win32con.KEY_SET_VALUE) win32api.RegSetValueEx(regKey,"WallpaperStyle", 0, win32con.REG_SZ, "2") win32api.RegSetValueEx(regKey, "TileWallpaper", 0, win32con.REG_SZ, "0") # refresh screen win32gui.SystemParametersInfo(win32con.SPI_SETDESKWALLPAPER,pic, win32con.SPIF_SENDWININICHANGE) setWallPaper('E:\\backPics\\character5.jpg')
效果:
接下来,我们设定每隔一个小时换一次壁纸:
我的图库中只有5张图片,所以显示图片的标志只能在[1 - 5]中循环了。
import Image import win32api, win32gui, win32con import time def setWallPaper(pic): # open register regKey = win32api.RegOpenKeyEx(win32con.HKEY_CURRENT_USER,"Control Panel\\Desktop",0,win32con.KEY_SET_VALUE) win32api.RegSetValueEx(regKey,"WallpaperStyle", 0, win32con.REG_SZ, "2") win32api.RegSetValueEx(regKey, "TileWallpaper", 0, win32con.REG_SZ, "0") # refresh screen win32gui.SystemParametersInfo(win32con.SPI_SETDESKWALLPAPER,pic, win32con.SPIF_SENDWININICHANGE) g_times = 0 while True: g_times = g_times+1 g_times = g_times%5 picDir = 'E:\\backPics\\character' picDir = picDir+str(g_times+1)+'.jpg' setWallPaper(picDir) time.sleep(60*60)
以上是“python如何实现windows壁纸定期更换功能”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注亿速云行业资讯频道!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。