当前位置:  开发笔记 > 编程语言 > 正文

如何以编程方式更改Mac OS X中的背景?

如何解决《如何以编程方式更改MacOSX中的背景?》经验,为你挑选了3个好方法。

我将如何以编程方式更改Mac OS X中的桌面背景?我想使用python,但我对任何可能的方式感兴趣.我可以连接到终端并调用某个命令吗?



1> dF...:

从python,如果你有appscript安装(sudo easy_install appscript),你可以做到

from appscript import app, mactypes
app('Finder').desktop_picture.set(mactypes.File('/your/filename.jpg'))

否则,此applescript将更改桌面背景

tell application "Finder"
    set desktop picture to POSIX file "/your/filename.jpg"
end tell

您可以使用命令行从命令行运行它osascript,或者使用类似的东西从Python 运行它

import subprocess

SCRIPT = """/usr/bin/osascript<


另请注意,它只会影响具有菜单栏的显示器的桌面,而不会影响其他显示器上的桌面.有没有办法让它影响其他桌面?
AppleScript可以简化为一行,如"告诉应用程序"Finder"将桌面图片设置为POSIX文件"/your/filename.jpg"`,您可以使用`osascript -e'告诉应用程序"Finder"从终端运行它"将桌面图片设置为POSIX文件"/your/filename.jpg"'`.

2> Clinton Blac..:

如果您正在为当前用户执行此操作,则可以从shell运行:

defaults write com.apple.desktop Background '{default = {ImageFilePath = "/Library/Desktop Pictures/Black & White/Lightning.jpg"; };}'

或者,作为root,为另一个用户:

/usr/bin/defaults write /Users/joeuser/Library/Preferences/com.apple.desktop Background '{default = {ImageFilePath = "/Library/Desktop Pictures/Black & White/Lightning.jpg"; };}'
chown joeuser /Users/joeuser/Library/Preferences/com.apple.desktop.plist

您当然希望替换图像文件名和用户名.

当Dock启动时,新设置将生效 - 无论是在登录时,还是在您启动时

killall Dock

[基于其他地方的帖子,并根据Matt Miller的答案提供的信息.]



3> Glen Balliet..:

我有同样的问题,除了我想要更改所有连接的显示器上的壁纸.这是一个Python脚本使用appscript(如上所述; sudo easy_install appscript)就是这样做的.

#!/usr/bin/python

from appscript import *
import argparse

def __main__():
  parser = argparse.ArgumentParser(description='Set desktop wallpaper.')
  parser.add_argument('file', type=file, help='File to use as wallpaper.')
  args = parser.parse_args()
  f = args.file
  se = app('System Events')
  desktops = se.desktops.display_name.get()
  for d in desktops:
    desk = se.desktops[its.display_name == d]
    desk.picture.set(mactypes.File(f.name))


__main__()

推荐阅读
N个小灰流_701
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有