3

AppleScriptの1つで問題が発生しています。Macが起動した後、またはMacのセキュリティパネルでスクリーンセーバーが停止した後にパスワードを呼び出すチェックボックスをオン/オフにするAppleScriptを作成しようとしています。私はこれをproximity.appで使用しています。家に帰って電話が範囲内にある場合、proximity.appはパスワードを削除しますが、範囲外にある場合はパスワードを元に戻します。ええと...MountainLionの新しいセキュリティポリシーのために、UIスクリプトを使用してそれを行うことを余儀なくされています。

したがって、範囲外の場合のコードがあります:

tell application "System Preferences"
set current pane to pane id "com.apple.preference.security"
tell application "System Events"
    tell process "System Preferences"
        tell first window
            tell first tab group
                click radio button 1
                if not 1 then click checkbox 1
                click menu item 6 of menu of pop up button 1
            end tell
        end tell
    end tell
end tell
quit

終わりを告げる

範囲内の場合:

tell application "System Preferences"
set current pane to pane id "com.apple.preference.security"
tell application "System Events"
    tell process "System Preferences"
        tell first window
            tell first tab group
                click radio button 1
                click checkbox 1
            end tell
        end tell
    end tell
end tell
quit

終わりを告げる

私が改善したいのは、チェックボックスをオンまたはオフにする前に、ボックスがオンまたはオフになっているかどうかを最初に確認する方法です。

ご協力いただきありがとうございます。

4

1 に答える 1

6

の値を確認するだけcheckboxです。

0 =チェックを外す、1 =チェックする

tell application "System Preferences" to ¬
    reveal anchor "Advanced" of pane id "com.apple.preference.security"
tell application "System Events"
    tell first tab group of first window of process "System Preferences"
        tell checkbox 1 to if value is 0 then click -- checkbox was not checked.
    end tell
end tell
quit application "System Preferences"
于 2012-10-23T02:36:41.353 に答える