¿Cómo hago un AppleScript con un menú desplegable sin Xcode?

8

¿Cómo hago un AppleScript que muestra un menú desplegable sin usar Xcode?

    
pregunta daviesgeek 12.08.2011 - 20:55

5 respuestas

1

No hay un concepto incorporado de menú en los diálogos-alertas dentro del lenguaje AppleScript.

Lo más cercano que podría hacer sería nombrar algunos archivos ficticios (en una carpeta temporal) con la acción apropiada y hacer que el usuario elija el archivo etiquetado con la acción que desea realizar.

open folder blah
  with selected file bah
    do whatever

Una "solución" horrenda a un problema que necesita un menú de cacao, ya sea que lo haga con Xcode o con alguien más, Xcode / IB es la herramienta que crea un menú . MacRuby es una buena forma de escribir una aplicación que necesita una interfaz de usuario más completa que AppleScript. No necesita Xcode / IB para modificar una aplicación desde un script puro.

Puede crear un NIB utilizando Interface Builder y escribirlo todo con AppleScript, pero el nib define el menú en sí, no AppleScript (incluso si AppleScript puede llenar o eliminar los elementos del menú en tiempo de ejecución).

    
respondido por el bmike 12.08.2011 - 22:07
11

Una opción sería utilizar CocoaDialog **:

set l to {"aa", "bb", "cc"}
set choices to ""
repeat with x in l
    set choices to choices & quoted form of x & " "
end repeat
set dialog to paragraphs of (do shell script "/Applications/CocoaDialog.app/Contents/MacOS/CocoaDialog" & " standard-dropdown --title title --text text --items " & choices)
if item 1 of dialog is "2" then return -- pressed cancel button
item ((item 2 of dialog) + 1) of l

Tambiénpuedesusarchoosefromlist:

choosefromlist{"aa", "bb", "cc"} with title "Title" with prompt "Please choose" default items "bb" with multiple selections allowed

**LaURLoriginalparaesterepositoriodeGithubpormstratmanhacambiado.Apartirdelainvestigación,parecequeCocoaDialoghapasadoaserunaorganización.Aquíestánlosnuevoscambios:

respondido por el user495470 12.10.2011 - 17:47
1

Además, si solo necesitas una lista para elegir, también puedes hacerlo

choose from list listYouDefined with prompt "Choose from the list."

Google "AppleScript Choose from list".

    
respondido por el joeyslaptop 12.10.2011 - 08:36
1

Entiendo que esta es una pregunta antigua, pero como la respuesta mejor votada dice en la documentación de CocoaDialog 2:

  

Las descargas no funcionan Las descargas para cocoadialog 2 ya no están   disponible. Esto es principalmente en parte debido a los diversos cambios y falta   de almacenamiento permanente a lo largo de los años.

y el 3 no vendrá hasta la primavera / verano 18 Estaba buscando otras alternativas y encontré Pashua :

(fototomadadelsitio)

Bajola documentación esto se llama a popup :

Example: Using popup
p.type = popup
p.label = Example popup menu
p.width = 310
p.option = Popup menu item #1
p.option = Popup menu item #2
p.option = Popup menu item #3
p.default = Popup menu item #2

Captura de pantalla:

Github repo

Después de usarlo, descubrí que puedes instalar Pashua.app en tu directorio de aplicaciones o puedes incrustar Pashua en tu aplicación. No soy el autor de esto, pero necesitaba una solución básica para una GUI y esto no se mencionó.

    
respondido por el ʀ2ᴅ2 02.02.2018 - 17:58
0

No necesitas Xcode para AppleScript. Simplemente abra el Editor AppleScript en Aplicaciones / Utilidades (acceso directo del buscador para la carpeta Utilidades: ⌘ Comando + Shift + U ). Hay un código de ejemplo para los menús desplegables en MacScripter: menú desplegable .

    
respondido por el Patrick 12.08.2011 - 21:47

Lea otras preguntas en las etiquetas