2010-03-01 7 views
5

स्वीकार नहीं करता है मैं ऐप्पलस्क्रिप्ट का उपयोग कर VisualBoyAdvance एप्लिकेशन में कीस्ट्रोक भेजने की कोशिश कर रहा हूं, लेकिन मैं इसे काम नहीं कर सकता।एप्लिकेशन कीस्ट्रोक

मेरे कोड, अब तक, यह है:

tell application "VisualBoyAdvance" 
    activate 

    tell application "System Events" 
     keystroke "k" 
    end tell 

end tell 

जब मैं VisualBoyAdvance सीधे बताओ, मैं इस त्रुटि मिलती है:

error "VisualBoyAdvance got an error: Can’t get keystroke \"k\"." number -1728 from keystroke "k" 

मैं सीधे VisualBoyAdvance कह की कोशिश की है, और मैं भी कोशिश की है key code 40 का उपयोग कर, लेकिन मैं अभी भी इसे काम नहीं कर सकता। अजीब पर्याप्त, काम करता है:

tell application "VisualBoyAdvance" 
    activate 

    tell application "System Events" 
     keystroke "d" using {command down} 
    end tell 

end tell 

लेकिन यह एक कुंजीपटल शॉर्टकट है कि मेनू पट्टी में दिखाई देता है, तो मुझे लगता है कि यह थोड़ा अलग होगा।

मैं एक कुंजीपटल अनुकरण करने और एप्लिकेशन को इसका जवाब देने के लिए ऐप्पलस्क्रिप्ट का उपयोग कैसे कर सकता हूं? अगर मैं इसके लिए ऐप्पलस्क्रिप्ट का उपयोग नहीं कर सकता, तो मैं और क्या उपयोग कर सकता हूं?

+0

आप सहायक उपकरण समर्थन चालू कर दी है है:

कुंजी कोड के साथ मदद के लिए, इस उपयोगी अनुप्रयोग देखते हैं? – alesplin

+0

इस पर कोई भाग्य? –

उत्तर

0

यह डेवलपर की पसंद पूरी तरह से एप्पलस्क्रिप्ट को जागरूक करने के लिए है। मेनू आइटम खोजक के दृष्टिकोण से एप्पलस्क्रिप्ट योग्य हैं, लेकिन अन्य यूआई विकल्प हो सकते हैं या नहीं भी हो सकते हैं। स्क्रिप्ट योग्य तत्वों के लिए उस एप्लिकेशन की जांच करने के लिए UIElementInspector देखें।

+0

क्या सिस्टम पर कीस्ट्रोक अनुकरण करने का कोई और तरीका है? –

0

मैं कुछ भी रूप में मैं इस अनुप्रयोग की जरूरत नहीं है, लेकिन यहाँ garuntee नहीं कर सकते हैं कुछ चीजें

tell application "VisualBoyAdvance" 
    activate 
    tell application "System Events" 
     tell application process "VisualBoyAdvance" 
      try 
      keystroke "k" 
       on error 
        try 
        keystroke (ASCII character 75) 
        end try 
       end try 
     end tell 
    end tell 
end tell 
7

कोशिश करने के लिए मुझे लगता है कि आप लगभग संपन्न कर लिया है। सफारी के लिए मैंने यहां कुछ उपयोग किया है; इस उदाहरण में, मैं कुंजी कोड 48 (टैब) भेजता हूं।

tell application "Safari" 
    activate 

    tell application "System Events" to tell process "Safari" to key code 48 
end tell 

AFAICS इस चाहिए लक्ष्य प्रक्रिया में AppleScript समर्थन की काफी हद तक स्वतंत्र रूप में आप सिस्टम घटनाक्रम पूछ रहे हैं यूनिवर्सल एक्सेस के माध्यम से कुंजी दबाएँ अनुकरण करने के लिए किया जाना है। http://manytricks.com/keycodes/

+0

इसके अलावा: 'अनुप्रयोग बताएं "सिस्टम इवेंट्स" कुंजीस्ट्रोक "डी" ' – frnhr

+0

पर" सफारी "प्रक्रिया बताने के लिए अच्छा @frnhr - यह भी स्पष्ट है :) –