2013-07-12 1 views
0

J'essaie de contrôler Google Earth en utilisant les touches fléchées, cependant, je veux le faire avec applescript. Essentiellement, ce code devrait fonctionner et je vais vous dire ce qu'il fait réellement.Applescript peut-il envoyer des flèches via la touche enfoncée?

tell application "System Events" 
    delay 3 
    key down 124 #Value of key right 
    delay 3 
    key up 124 
end tell 

Ce code devrait attendre que j'aille à google earth, alors il tiendra la touche fléchée droite pendant 3 secondes. Cependant, il frappe juste un «a». J'ai vu des recommandations à faire ce qui suit:

key down (key code 124) 

Ce genre de travaux, il appuyez sur la touche droite une seule fois et ne tient pas.

Si vous le faites avec une clé telle que D (également utilisée pour naviguer dans Google Earth), cela fonctionne parfaitement. (Je pense que "clé en bas 2" fait cela). Donc, ma question est la suivante: y a-t-il un moyen de faire fonctionner les touches fléchées? "Travailler" fait référence à l'envoi d'un événement de touche qui ne lie pas le script et qui pourrait être annulé ultérieurement avec un événement clé. J'aimerais vraiment pouvoir contrôler le simulateur de vol (le WASD ne fonctionne pas - les touches fléchées le font).

Merci pour toutes les suggestions,

Jake

+0

J'ai répondu à votre question. Si cela vous a été utile, veuillez "accepter" la réponse et voter pour celle-ci. – Mark

Répondre

1

Ce script appuie sur la touche flèche droite pendant 3 secondes:

tell application "System Events" 
    set now to the seconds of the (current date) 
    set later to now + 3 
    if later > 60 then set later to later - 60 
    repeat while the seconds of the (current date) is not later 
     key down (key code 124) 
    end repeat 
end tell 

Je ne sais pas si cela va fonctionner avec Google Earth, mais Je sais que le script est correct.

+0

Eh bien, désolé je n'ai pas eu à répondre à cela plus tôt, je suis très occupé. J'ai essayé quelque chose de similaire à cela (aurait dû le mentionner), il semble très nerveux dans quelque chose comme google earth et il bloque le traitement pour autant que je veux appuyer sur la touche. Sur Windows et Linux, ce type d'opération fonctionne parfaitement. Je suppose que la question est mieux posée: "Est-ce qu'un vrai raccourci peut être utilisé dans l'applescript pour les touches fléchées" (je crois que les autres touches fonctionnent en fait). Je vais mettre à jour ma question un peu. – Jake

+0

Je pense que ce que j'ai fait est aussi bon que possible. Peut-être que vous devriez essayer une solution non-AppleScript. – Mark

+0

Je suppose que mes rêves de contrôler un avion via un joystick Arduino ne peuvent jamais fonctionner sur le Mac ... Eh bien. Je suppose que je vais le faire sur Windows. – Jake

Questions connexes