Uso de AppleScript para hacer clic en los botones de radio

1

Creo que esto es un error en Mac OS X: con una configuración de monitor dual, el Dock cambia de vez en cuando al segundo (no principal) monitor.

Para solucionar este problema, abro el Dock y hago clic en los botones de opción "Izquierda" y "Inferior" para el elemento "Posición en la pantalla".

Necesito automatizar esto con AppleScript. Podría abrir el Dock utilizando este script, pero no estoy seguro de cómo hacer clic en el botón de opción Izquierda y luego en la parte inferior en AppleScript.

tell application "System Preferences"
    set the current pane to pane id "com.apple.preference.dock"
    activate
end tell

Intenté agregar algo de código en el script, pero no funciona.

click radiobutton "Left"

    
pregunta prosseek 03.10.2016 - 17:31

2 respuestas

1

Puede hacer clic en los botones de opción de más de una manera.

Después del bloque tell application "System Preferences" use un bloque tell application "System Events" , por ejemplo:

tell application "System Preferences"
    set the current pane to pane id "com.apple.preference.dock"
    activate
end tell

tell application "System Events"
   click radio button 1 of radio group 1 of window 1 of process "System Preferences"
end tell

En este primer uso, el botón de opción 1 está Izquierdo , el botón de opción 2 es Inferior y el botón de opción 3 está a la derecha .

O:

tell application "System Preferences"
    set the current pane to pane id "com.apple.preference.dock"
    activate
end tell

tell application "System Events"
   click radio button "Left" of radio group 1 of window "Dock" of process "System Preferences"
end tell

En este segundo uso, use Izquierda , Parte inferior o Derecha directamente y también puede usar Dock en lugar de ventana 1 . (Lo último que podrías hacer en cualquiera de estos ejemplos).

O:

tell application "System Preferences"
    set the current pane to pane id "com.apple.preference.dock"
    activate
end tell

tell application "System Events"
    click (every radio button whose value of attribute "AXTitle" is "Left") of radio group 1 of window 1 of process "System Preferences"
end tell

En este tercer uso, use Izquierda , Parte inferior o Derecha para el valor de (every radio button whose value of attribute "AXTitle" is "?") donde ? es uno de estos valores.

Nota: estos ejemplos se han probado en OS X 10.11.6 y funcionan tal como están ahora editados. Agregué
of radio group 1 entre botón de opción y ventana . Para usar en OS X 10.8.5, elimine of radio group 1 del código .

    
respondido por el user3439894 03.10.2016 - 17:55
0

En lugar de hacer clic en los botones, algo que es más lento y más propenso a errores, es mejor cambiar la configuración directamente usando AppleScript.

Para cambiar la configuración del borde de la pantalla, ejecute

tell application "System Events"
    tell dock preferences
        set properties to {screen edge:bottom}
    end tell
end tell

si quieres que vaya a la izquierda, simplemente cambia 'abajo' por 'izquierda' arriba.

Para obtener todas las configuraciones posibles, 'obtener propiedades' en lugar de establecerlas.

    
respondido por el Jimmy 29.12.2016 - 09:22

Lea otras preguntas en las etiquetas