使用Java本机访问更改MAC系统的桌面背景

时间:2011-06-01 10:44:59

标签: java jna

我有一个使用JNA更改系统桌面的代码段,它对我来说很好。

我需要做些什么更改才能在Mac OS上使用此代码。

非常感谢帮助。

谢谢, 谢哈布。

2 个答案:

答案 0 :(得分:0)

看起来您需要将NSWorkspace类映射到JNA。定义在JNA中扩展Library类的接口。然后将setDesktopImageURL:forScreen:options:error:方法映射到JNA。

http://developer.apple.com/library/mac/#documentation/Cocoa/Reference/ApplicationKit/Classes/NSWorkspace_Class/Reference/Reference.html

答案 1 :(得分:0)

如果没有JNA,你可以这样做。

public void setWallpaper(File file)
throws Exception {
    String as[] = {
            "osascript", 
            "-e", "tell application \"Finder\"", 
            "-e", "set desktop picture to POSIX file \"" + file.getAbsolutePath() + "\"",
            "-e", "end tell"
    };
    Runtime runtime = Runtime.getRuntime();
    Process process;
    process = runtime.exec(as);
}

积分

https://stackoverflow.com/a/5007344/1401250

https://sourceforge.net/p/jawc-wallpaperc/code/HEAD/tree/trunk/Jawc/src/it/jwallpaper/platform/impl/MacPlatform.java#l38