Cómo saber el nombre de los elementos de la interfaz de usuario utilizando el inspector de accesibilidad (o cualquier otra herramienta)

Estoy tratando de interactuar con un cuadro de dialog de printing a través de Applescript.

Lo que quiero emular es que el usuario establezca un valor en un menu desplegable específico.

  • ¿Cómo guardo una captura de pantalla con el formatting de date ISO 8601 con Applescript?
  • applescript (osascript) para cambiar el perfil de Terminal.app
  • Hacer Applescript presionar LShift
  • Applescript dando el error 1728 al verificar si el file existe
  • Manipulación de la date de Applescript para get múltiples formattings
  • Guardar applescripts como scripts versus text
  • Digamos que tengo:

    tell application "System Events" tell process "Preview" set value of pop up button XXX to YYY end tell end tell 

    ¿Cómo debería saber el nombre XXX? Por ejemplo, ¿cómo distinguiría entre los menus desplegables "impresora" y "preestablecidos"?

    Abrí el Inspector de Accesibilidad, pero a partir de la información que se muestra allí, no puedo encontrar una reference al nombre u otro identificador único para el menu desplegable especificado.

    He visto a mucha gente usando numbers para referirse al menu desplegable diferente, pero no estoy seguro de que esto sea una buena práctica. ¿Qué sucede si Apple decide cambiar el order de dos lists desplegables en algún punto?

    Cualquier ayuda sería apreciada.

    ACTUALIZAR :

    Usando 10.6.8 y el inspector como se sugiere a continuación, obtengo lo siguiente:

    enter image description here

  • Vaya a Running Safari y presione Enter usando AppleScript
  • ¿Los dictionarys Applescript se pueden compartir o están disponibles sin acceso a la aplicación?
  • ¿Cómo evito que AppleScript agregue .0 al final de un número?
  • El cuadro de dialog de AppleScript da error?
  • Cómo mantener el enfoque en la window de la aplicación con AppleScript
  • Ayuda para get una statement condicional al final de esta secuencia de commands, para que funcione correctamente
  • 4 Solutions collect form web for “Cómo saber el nombre de los elementos de la interfaz de usuario utilizando el inspector de accesibilidad (o cualquier otra herramienta)”

    ACTUALIZAR. esto funcionará en 10.7.x pero 10.6 tiene información del elemento les.

    Los botones (menus desplegables) en la hoja de printing tienen descripción para describir la function.

    En el inspector de accesibilidad ; usted ve esto al pasar el mouse sobre el elemento (button). puede bloquear la vista del inspector de Accesibilidad con cmd + F7.

    La descripción se mostrará como AXDescription

    enter image description here

    En los casos para las Impresoras, es Impresoras para Presets, son Presets

    Si conoces la AXDescription puedes evitar los numbers usando algo como esto. Pero esta no es la única forma. Solo un ejemplo.

     activate application "Preview" tell application "System Events" tell process "Preview" click ((pop up buttons of sheet 1 of window 1) whose description is "Printers") end tell end tell 

    Para que lo anterior funcione en este ejemplo, la Hoja de printing debe estar visible junto con 'Mostrar detalles'

    El button / desplegable tiene un menu. De modo que puede seleccionar o hacer clic en él consultando los elementos del menu del menu del button.

    Ya sea por número o usando su título / AXTitle.

     activate application "Preview" tell application "System Events" tell process "Preview" click ((pop up buttons of sheet 1 of window 1) whose description is "Presets") click menu item "Last Used Settings" of menu of ((pop up buttons of sheet 1 of window 1) whose description is "Presets") end tell end tell 

    Puede acortar el código repetitivo usando una variable para el button y llamando a eso. Al hacerlo como mi ejemplo a continuación;

      activate application "Preview" tell application "System Events" tell process "Preview" set Presets_button to item 1 of ((pop up buttons of sheet 1 of window 1) whose description is "Presets") click Presets_button click menu item "Last Used Settings" of menu of Presets_button end tell end tell 

    Utilice uno de los scripts vinculados en esta sugerencia de Mac OS X para encontrar la forma de dirección adecuada: Buscar elementos de control y de menu para usar en el script de la interfaz de usuario de AppleScript.

    IIRC, deberá hacer clic (cmd está en Eventos del sistema) en el button del menu emergente antes de que pueda seleccionar un elemento del menu en su menu.

    Para aquellos que se preguntan, parece que un lugar donde encontrar el inspector de accesibilidad en 10.7 es:

    /Aplicaciones/Xcode.app/Contents/Applications

    Recientemente escribí mi flujo de trabajo para UI Scripting en AppleScript .

    En resumen, el componente key que hizo las cosas mucho, mucho más fáciles para mí fue aprender que el command UI Elements en AppleScript devuelve una list de los términos que el Editor de AppleScript quiere ver para llamar a los Elementos de la UI. Interrelacione esto con los términos que se ven en Accessibility Inspector (que a menudo son ligeramente diferentes) para build un script en funcionamiento.

    Loving Apple Products like poisoning (iPhone, iPad, iMac, Macbook, iWatch).