मैं एक AppleScript कैसे बनाते हैं जो Xcode का उपयोग किए बिना एक ड्रॉप-डाउन मेनू प्रदर्शित करता है?
मैं एक AppleScript कैसे बनाते हैं जो Xcode का उपयोग किए बिना एक ड्रॉप-डाउन मेनू प्रदर्शित करता है?
जवाबों:
AppleScript भाषा के भीतर संवाद-अलर्ट में मेनू की अवधारणा में कोई अंतर्निहित नहीं है।
आप जो निकटतम कार्य कर सकते हैं वह उपयुक्त कार्रवाई के साथ कुछ डमी फ़ाइलों (एक अस्थायी फ़ोल्डर में) का नाम होगा और उपयोगकर्ता उस फ़ाइल को चुनें जिसे आप कार्रवाई करना चाहते हैं।
open folder blah
with selected file bah
do whatever
एक समस्या का एक भयावह "समाधान" जिसे कोको मेनू की आवश्यकता है - चाहे आप इसे Xcode में बनाते हैं या कोई अन्य करता है - Xcode / IB एक उपकरण है जो मेनू बनाता है । MacRuby ऐसे ऐप को स्क्रिप्ट करने का एक अच्छा तरीका है जिसमें AppleScript की तुलना में अधिक पूर्ण विशेषताओं वाला UI होना चाहिए। आपको शुद्ध स्क्रिप्ट से एप्लिकेशन को रूबी करने के लिए Xcode / IB की आवश्यकता नहीं है।
आप इंटरफ़ेस बिल्डर का उपयोग करके एक एनआईबी बना सकते हैं और यह सब AppleScript का उपयोग करके स्क्रिप्ट कर सकता है, लेकिन निब मेनू को ही परिभाषित करता है - AppleScript नहीं (भले ही AppleScript रन टाइम में मेनू आइटम को पॉप्युलेट या हटा सकता है)।
एक विकल्प कोकोआडियोगॉग ** का उपयोग करना होगा :
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 ने एक org को संक्रमण किया है। यहाँ नए बदलाव हैं:
इसके अतिरिक्त, यदि आपको केवल चुनने के लिए सूची की आवश्यकता है, तो आप भी कर सकते हैं
choose from list listYouDefined with prompt "Choose from the list."
Google "AppleScript सूची में से चुनें"।
मैं समझता हूं कि यह एक पुराना सवाल है, लेकिन चूंकि कोकोआडियलॉग 2 के लिए प्रलेखन में सबसे अच्छा मतदान वाला जवाब कहता है:
डाउनलोड काम नहीं करते हैं coccadialog 2 के लिए डाउनलोड अब उपलब्ध नहीं हैं। यह विभिन्न परिवर्तनों और वर्षों में स्थायी भंडारण की कमी के कारण ज्यादातर हिस्सा है।
और 3 वसंत / गर्मियों तक नहीं आ रहा है 18 मैं अन्य विकल्पों के लिए खोज कर रहा था और मुझे पशुआ मिला :
प्रलेखन के तहत यह एक कहा जाता है 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
स्क्रीनशॉट:
गितुब रेपो
इसका उपयोग करने के बाद मैंने पाया कि आप अपने एप्लिकेशन डायरेक्टरी में पशुआ.ऐप स्थापित कर सकते हैं या पशुआ को अपने ऐप में एम्बेड कर सकते हैं। मैं इसका लेखक नहीं हूं, लेकिन मुझे GUI के लिए आधार समाधान की आवश्यकता थी और इसका उल्लेख नहीं किया गया था।
आपको AppleScript के लिए Xcode की आवश्यकता नहीं है। बस एप्लिकेशन / यूटिलिटीज में ऐप्पलस्क्रिप्ट एडिटर खोलें (यूटिलिटी फ़ोल्डर के लिए खोजक शॉर्टकट: ⌘ Command+ Shift+ U)। MacScripter पर ड्रॉपडाउन मेनू के लिए कुछ नमूना कोड है : Dropdown मेनू ।