【发布时间】:2017-11-21 02:15:24
【问题描述】:
我已经编写了 python 脚本来改变桌面壁纸。
使用以下代码更改壁纸后:
app('Finder').desktop_picture.set(mactypes.File(imageAddress))
我已经添加了
os.system("killall Dock")
壁纸成功更改,但所有活动但最小化的窗口最大化。我的问题是如何在不更改最小化/最大化窗口状态的情况下刷新我的 Dock?
我也试过以下方法:
tell application "Finder" to set desktop picture to POSIX file "/Library/Desktop Pictures/Milky Way.jpg"
osascript -e 'tell application "Finder" to set desktop picture to POSIX file "/Library/Desktop Pictures/Milky Way.jpg"'
我的python代码如下:
#from appscript import app, mactypes
import subprocess
import os
def change_desktop_wallpaper(imageAddress):
#app('Finder').desktop_picture.set(mactypes.File(imageAddress))
#os.system("Killall Dock")
Script = ''' osascript -e 'tell application "Finder" to set desktop picture to POSIX file "/Users/princechawla/timepass/quotesWall/myquotewallpaper.jpg" ' '''
os.system(Script)
#os.system(''' osascript -e tell application "Finder" to set desktop picture to POSIX file "/Users/princechawla/timepass/quotesWall/myquotewallpaper.jpg" ''')
#subprocess.Popen(Script , shell=True)
#os.system("killall Dock")
不使用killall Dock就不行
我在这里问过同样的问题:
killall Dock - all active windows maximize and appear on Desktop
这可能看起来像:
programmatically change the background of mac OSX
但任何问题的答案都不起作用。
【问题讨论】:
标签: python image applescript macos-sierra