OS X の Python からプログラムでウィンドウを移動しようとしています。
これを行う Stackoverflowで AppleScript のスニペットを見つけましたが、Python または別の「実際の」スクリプト言語で実行したいと考えています。
これは動作しない私の Python スクリプトです。それぞれの下に印刷コマンドの出力を書きました。
#!/usr/bin/python
from Foundation import *
from ScriptingBridge import *
app = SBApplication.applicationWithBundleIdentifier_("com.apple.SystemEvents")
finderProc = app.processes().objectWithName_("Finder")
print finderProc
# <SystemEventsProcess @0x74b641f0: SystemEventsProcess "Finder" of application "System Events" (29683)>
finderWin = finderProc.windows()[0]
print finderWin
# <SystemEventsWindow @0x74b670e0: SystemEventsWindow 0 of SystemEventsProcess "Finder" of application "System Events" (29683)>
print finderWin.name()
# Macintosh HD
finderWin.setBounds_([[20,20],[100,100]])
# no visible result
finderWin.setPosition_([20,20])
最後のコマンド (setPosition_) は、次の例外でクラッシュします。
Traceback (most recent call last):
File "/Users/mw/Projekte/Python/winlist.py", line 17, in <module>
finderWin.setPosition_([20,20])
AttributeError: 'SystemEventsWindow' object has no attribute 'setPosition_'
setBounds コマンドを機能させるにはどうすればよいですか?