AppleScript का उपयोग करके सूची में पहला आइटम प्राप्त करें


3

मुझे सूची से पहला आइटम एक चर में कैसे मिलेगा?

मैं एक आवेदन की खिड़कियों की पहली खिड़की प्राप्त करने की कोशिश कर रहा हूं।

मैंने कोशिश की

tell application "System Events"
    repeat with theProcess in processes
        if not background only of theProcess then
            if processName is "Xcode" then
                set theWindow to first window of windows
            end if
        end if
    end repeat
end tell

लेकिन यह इस त्रुटि को फेंकता है:

हर खिड़की की खिड़की नहीं मिल सकती।

जवाबों:


2

जब तक आपके पास आपके प्रश्न में दिखाए गए तरीके के बारे में जाने की स्पष्ट आवश्यकता नहीं है, मैं इसे और अधिक सरल और उपयोग में रखूँगा:

tell application "System Events" to set isRunning to exists (processes where name is "Xcode")
if isRunning then set theWindow to (first window of application "Xcode")

अन्यथा, निम्नलिखित तरीके से अपने मौजूदा कोड ब्लॉक को संशोधित करने से उपरोक्त कोड की दो पंक्तियों के समान परिणाम प्राप्त होगा :

tell application "System Events"
    repeat with theProcess in processes
        if not background only of theProcess then
            if name of theProcess is "Xcode" then
                tell application "Xcode"
                    set theWindow to first window of application "Xcode"
                end tell
            end if
        end if
    end repeat
end tell

यदि आप मेरे उत्तर की पहली दो लाइन कोड का उपयोग एक अधिक टोकन वाले मानवकृत में करना चाहते हैं , उदाहरण के लिए, उपयोग करें:

set appName to "Xcode"
tell application "System Events" to set isRunning to exists (processes where name is appName)
if isRunning then set theWindow to (first window of application appName)

तो फिर तुम सब करने की जरूरत है सेट कर दिया जाता appNameकी पहली पंक्ति में लक्ष्य अनुप्रयोग के लिए कोड और की दो पंक्तियाँ कोड यह खड़ा है के रूप में और अन्य एप्लिकेशन नाम के साथ उपयोग के लिए संपादित किया जा की जरूरत नहीं है के बाद।


isRunningकीवर्ड क्या करता है ?
इयूलियन ओनोफ्रेई

मुझे विंडो का नाम नहीं चाहिए।
इयूलियन ओनोफ्रेई

@ इयूलियन ओनोफ्रेई, isRunningएक कीवर्ड नहीं है , यह एक वैरिएबल है , जो प्रक्रिया के मौजूद होने पर trueया तो falseनिर्भर करता है। यदि आप खिड़की का नाम नहीं चाहते हैं, तो आप क्या चाहते हैं?
user3439894

खिड़की वस्तु, अगर ऐसी कोई बात है। मैं किसी तरह उस विंडो में कुछ चेकबॉक्स पुनर्प्राप्त करना चाहता हूं।
इयूलियन ओनोफ्रेई

1
@ इयूलियन ओनोफ्रेई, मुझे लगा कि आपने किया है, लेकिन यह सुनिश्चित करना चाहते हैं, और यह दूसरों के लिए भी उपलब्ध है जो इस धागे को पढ़ सकते हैं और कोड कैसे काम करते हैं, इसकी पूरी समझ नहीं है । :)
user3439894
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.