0 votos

La activación de Applescript no hace que la aplicación esté completamente activa

Estoy escribiendo un script para una aplicación que no admite scripts. Es una aplicación propietaria con la que estoy atascado, así que no hay alternativa para mí. El problema que estoy teniendo es que esta aplicación no responde bien a "activar". Cuando la activo en un applescript, trae su ventana principal al primer plano, pero la ventana aún no está completamente activa (por ejemplo, los botones de Cerrar/Minimizar/Pantalla completa son grises, la sombra alrededor de la ventana es tenue, etc). Tengo que hacer clic en ella o pulsar cmd-tab dos veces para que se active. La aplicación tiene una lógica que impide que empiece a funcionar hasta que la ventana esté realmente activa, así que tengo que hacer que la ventana esté realmente activa.

La solución que estoy usando ahora mismo es hacer que el script pulse cmd-tab dos veces.

tell application "MyApp" to activate
key down command
keystroke tab
key up command
key down command
keystroke tab
key up command

Me preguntaba si hay una solución más elegante para que la aplicación esté realmente activa.

3voto

awy Puntos 500

La alternativa es activar su aplicación a través del Dock:

tell application "System Events" to click UI element "MyAPP" of list 1 of application process "Dock"

La forma en que llegué aquí es utilizar la función de registro de Automator y copiar los pasos" y pegarlos en script Editor. Este los traduce a AppleScript.

0 votos

¡Ya está! He eliminado todo el caramelo del automatizador y lo he reducido a esto: decirle a la aplicación "Eventos del sistema" que haga clic en el elemento de la interfaz de usuario "MyAPP" de la lista 1 del proceso de la aplicación "Dock"

0voto

Si la aplicación ya se está ejecutando, intente lo siguiente:

tell application "System Events" to set frontmost of process "NameOfApp" to true

0 votos

No hay dados, la ventana se activa pero sigue estando desenfocada.

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X