Use Applescript / Automator para seleccionar una ventana resaltada en el Finder

0

Tengo un applecript que extrae el nombre, el proceso asociado y otra información sobre una ventana de destino. A partir de ahora, el script selecciona la ventana de destino a través de un diálogo de "elegir de la lista" que contiene todas las ventanas abiertas de todos los procesos. Sería mucho mejor si pudiera seleccionar la ventana de destino resaltándola en el Finder. Por ejemplo, esto se puede hacer para archivos y carpetas:

tell application "Finder" to set this_file to the selection

Pregunta: ¿Existe un método equivalente para seleccionar ventanas del Finder (usando Applescript o Automator)?

    
pregunta paamachat 10.08.2015 - 20:21

2 respuestas

2

Bueno, puedes preguntarle a Finder por sus ventanas. El pedido devuelto es superior a la inferior.

Si tiene una ventana específica que desea y sabe su nombre, solo pídale que la active ...

tell application "Finder"
    set w to (name of every window)
    set i to (id of every window)

    tell window named "Desktop" to activate

    get front window
end tell

Y los resultados ...

tell application "Finder"
    get name of every window
        --> {"Desktop", "Development", "Downloads"}
    get id of every window
        --> {16267, 16290, 16265}
    activate window "Desktop"
        --> Finder window id 16267
    get window 1
        --> Finder window id 16267
end tell

Espero que haya ayudado ...

    
respondido por el Vic 19.08.2015 - 16:48
0

Así que aquí hay un código final que funciona para todas las ventanas, Finder y otros. Tenga en cuenta que se requiere el retraso de 4 segundos para cambiar a su ventana de interés. Sin él, el Editor de AppleScript siempre será el más avanzado.

tell application "System Events"
display dialog "Click OK, then immediately click on the target window.  Whichever window is highlighted at  4 seconds will be captured."
delay 4
set frontApp to name of first application process whose frontmost is true
set frontWin to name of first window of (first application process whose frontmost is true)
display dialog "You selected:" & linefeed & linefeed & "Window: " & frontWin & linefeed & linefeed & "Process: " & frontApp
end tell
-- now do what you need to with this window
    
respondido por el paamachat 19.08.2015 - 22:17

Lea otras preguntas en las etiquetas