Come faccio a creare un AppleScript con un menu a discesa senza Xcode?

8

Come faccio a creare un AppleScript che visualizza un menu a discesa senza utilizzare Xcode?

    
posta daviesgeek 12.08.2011 - 20:55
fonte

5 risposte

1

Non esiste un concetto incorporato di un menu nelle finestre di dialogo-avvisi all'interno del linguaggio AppleScript.

Il più vicino possibile è il nome di alcuni file fittizi (in una cartella temporanea) con l'azione appropriata e l'utente sceglie il file etichettato con l'azione che si desidera eseguire.

open folder blah
  with selected file bah
    do whatever

Un'orribile "soluzione" a un problema che richiede un menu di cacao - che lo facciate in Xcode o in qualcun altro - Xcode / IB è lo strumento che crea un menu . MacRuby è un buon modo per creare script per un'app che richiede un'interfaccia utente più completa rispetto ad AppleScript. Non hai bisogno di Xcode / IB per rubare un'app da puro script.

Potresti creare un NIB usando Interface Builder e scriptarlo tutto usando AppleScript, ma il pennino definisce il menu stesso - non AppleScript (anche se AppleScript può popolare o eliminare le voci di menu in fase di esecuzione).

    
risposta data 12.08.2011 - 22:07
fonte
11

Un'opzione sarebbe utilizzare 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

Potrestiancheutilizzarechoosefromlist:

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

**L'URLoriginaleperquestorepositoryGithubdimstratmanècambiato.DallaricercasembracheCocoaDialogsiapassatoaun'organizzazione.Eccolenuovemodifiche:

risposta data 12.10.2011 - 17:47
fonte
1

Inoltre, se hai solo bisogno di un elenco tra cui scegliere, puoi anche fare

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

Google "AppleScript Scegli dalla lista".

    
risposta data 12.10.2011 - 08:36
fonte
1

Capisco che questa è una vecchia domanda ma dal momento che la migliore risposta up-votata dice nella documentazione di CocoaDialog 2:

Downloads do not work Downloads for cocoadialog 2 are no longer available. This is mostly in part due to the various changes and lack of permanent storage over the years.

e 3 non arrivano fino alla primavera / estate 18 Stavo cercando altre alternative e ho trovato Pashua :

(fotoscattatadalsito)

Nella documentazione questo è chiamato 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

Cattura schermo:

Github repo

Dopo averlo utilizzato ho scoperto che puoi installare Pashua.app nella tua directory dell'applicazione o puoi incorporare Pashua nella tua app. Non sono l'autore di questo, ma avevo bisogno di una soluzione di base per una GUI e questo non è stato menzionato.

    
risposta data 02.02.2018 - 17:58
fonte
0

Non hai bisogno di Xcode per AppleScript. Apri l'editor AppleScript in Applicazioni / Utility (scorciatoia del Finder per la cartella Utility: ⌘ Comando + Maiusc + U ). Esiste un codice di esempio per i menu a discesa su MacScripter: menu a discesa .

    
risposta data 12.08.2011 - 21:47
fonte

Leggi altre domande sui tag