- ベストアンサー
フローティング時計の常時表示(2)
- toast5さんへのお礼入力がうまく行かないため、新しい質問をします。
- Show Desktop 1.6.4の機能を使用して画面からフローティング時計(QuartsClocks)だけを消さない方法を作成しました。
- 作成したプログラムは動作は遅いかもしれませんが、とりあえずうまくいっているようです。ご意見を伺いたいです。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
おお、command + H に option を足すと「他を隠す」ということを、今初めて知りました。 素晴らしいです。うまくいってるならそれでいいと思いますが、 しかしうちの環境では、それは「スクリプトエディタ→実行」では機能しますが、 ドックから実行すると Finder ウィンドウが残ってしまうようです。 もしそちらでも似たようなことがあったら、以下のどっちかを試してください。 ドックに収納する速度はこっちの方が速いはずです。 上のは、何故か「to keystroke "m"」ではうまくいかず、「to key code 46」だと動作します。 下のは、何故か「tell application "Show Desktop"」ではうまくいきませんでした。 さっきたまたまうまくいかなかっただけかも知れませんが。 ------------------------------------------------------------------------- tell application "Finder" to activate tell application "System Events" to keystroke "h" using {command down, option down} tell application "Finder" to activate tell application "System Events" to key code 46 using {command down, option down} if application "QuartzClocks" is running then tell application "QuartzClocks" to activate end if ------------------------------------------------------------------------- tell application "Finder" open application file "Show Desktop.app" of folder "Applications" of startup disk end tell if application "QuartzClocks" is running then tell application "Finder" open application file "QuartzClocks.app" of folder "Applications" of startup disk end tell end if -------------------------------------------------------------------------
その他の回答 (1)
- toast5
- ベストアンサー率37% (239/638)
自分用メモ。 tell application "Finder" to activate tell application "System Events" to keystroke "h" using {command down, option down} は、以下のようにも書けます。 tell application "Finder" set visible of every process whose visible is true and name is not "Finder" to false end tell
お礼
ありがとうございました。「うちの環境では」みたいなことがあることにはびっくりです (私のところでは「ドックから実行」でも大丈夫でしたから)。いただいた2つのやり方のうち初めの方がわかり易いので当分これでやってみます。 私は fortran や basic の系統の計算ソフトは慣れているのですが、単なる計算機能にはとどまらない AppleScript はどうしても OS 依存が激しいのでしょうね。コマンドはまだよくは分からないド素人なので、これを橋頭堡にして少しずつでも知識を増やそうと思います。 備考1:OSX10.7.4 は再起動する前に走っていたアプリは再起動後にも自動的に activate されますので if application "QuartzClocks" is running then という部分は不要のようです。というか仮に寝ていた "QuartzClocks" が activate されるのは私の場合望ましいことです。 これで閉じさせていただきます。