[apple] Xcode가없는 드롭 다운 메뉴로 AppleScript를 만들려면 어떻게해야합니까?

Xcode를 사용하지 않고 드롭 다운 메뉴를 표시하는 AppleScript를 만들려면 어떻게합니까?



답변

AppleScript 언어의 대화 상자 경고에는 메뉴 개념이 내장되어 있지 않습니다.

가장 가까운 작업은 임시 폴더의 일부 더미 파일 이름을 적절한 작업으로 지정하고 사용자가 수행하려는 작업으로 레이블이 지정된 파일을 선택하도록하는 것입니다.

open folder blah
  with selected file bah
    do whatever

Xcode 또는 다른 사람이 코코아 메뉴를 만들어야하는 문제에 대한 끔찍한 “솔루션” -Xcode / IB는 메뉴를 만드는 도구입니다 . MacRuby는 AppleScript보다 완전한 UI가 필요한 앱을 스크립팅 할 수있는 좋은 방법입니다. 순수 스크립트에서 앱을 루비하기 위해 Xcode / IB가 필요하지 않습니다.

Interface Builder를 사용하여 NIB를 생성하고 AppleScript를 사용하여 NIB를 스크립팅 할 수 있지만, nib는 AppleScript가 아닌 메뉴 자체를 정의합니다 (AppleScript가 런타임에 메뉴 항목을 채우거나 삭제할 수있는 경우에도).


답변

하나의 옵션은 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

당신은 또한 사용할 수 있습니다 choose from list:

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


**이 Github 리포지토리의 원래 URL mstratman이 변경되었습니다. 연구 결과에 따르면 CocoaDialog 가 조직으로 전환 된 것으로 보입니다 . 새로운 변경 사항은 다음과 같습니다.


답변

또한 선택할 목록이 필요한 경우에도 할 수 있습니다

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

Google “AppleScript 목록에서 선택”


답변

나는 이것이 오래된 질문이라는 것을 알고 있지만 가장 좋은 대답은 CocoaDialog 2의 문서에 나와 있기 때문에 :

다운로드가 작동하지 않음 cocoadialog 2 용 다운로드는 더 이상 사용할 수 없습니다. 이것은 대부분 부분적으로 다양한 변화와 수년에 걸친 영구 스토리지 부족으로 인한 것입니다.

3은 Spring / Summer 18까지 오지 않습니다. 다른 대안을 찾고 있었고 Pashua를 찾았 습니다 .

여기에 이미지 설명을 입력하십시오
(사이트에서 가져온 그림)

언더 문서 이것은이라고합니다 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

스크린 샷 :

여기에 이미지 설명을 입력하십시오

깃 허브 레포

그것을 사용한 후 응용 프로그램 디렉토리에 Pashua.app를 설치하거나 응용 프로그램에 Pashua를 포함시킬 수 있다는 것을 알았습니다. 나는 이것의 저자는 아니지만 GUI를위한 기본 솔루션이 필요했으며 언급되지 않았습니다.


답변

AppleScript에는 Xcode가 필요하지 않습니다. 응용 프로그램 / 유틸리티에서 AppleScript 편집기를 열기 만하면됩니다 (유틸리티 폴더의 파인더 바로 가기 : ⌘ Command+ Shift+ U). MacScripter의 드롭 다운 메뉴에 대한 샘플 코드가 있습니다 : 드롭 다운 메뉴 .


답변