![]() |
Bienvenue invité ( Connexion | Inscription )
![]() |
![]()
Message
#1
|
|
![]() Macbidouilleur de vermeil ! ![]() ![]() ![]() ![]() Groupe : Membres Messages : 914 Inscrit : 12 Oct 2004 Lieu : Liège.be Membre no 25 088 ![]() |
Bonjour,
Je désirerais scripter un geste que je dois faire plusieurs fois par heure… mais ne suis pas trop versé dans le codage. Dans une application, je voudrais créer les étapes suivantes: (dans l'application courante, celle qui est à l'avant-plan) - raccourci clavier ⌥⌘, - clic sur onglet "cotations" - clic sur case à cocher "Placer les cotations…" (pour cocher ou décocher selon que l'état de la case) - clic sur OK en bas de la fenêtre de dialogue L'idée est de placer ce script dans BetterTouchTool pour l'appeler via un raccourci clavier. Merci de votre aide! Capture d'écran -------------------- Je ne croque pas que des pommes, j'aime aussi le Camembert.
iMac 2020, macOS Ventura MacMini C2D 2020, macOS Monterey iPad mini 2, iPad 6 iPhone 12 pro |
|
|
![]() |
![]()
Message
#2
|
|
Macbidouilleur de bronze ! ![]() ![]() Groupe : Membres Messages : 266 Inscrit : 7 Dec 2013 Lieu : Ile de France Membre no 188 169 ![]() |
Bonjour MacEmbert,
L'erreur provient du fait que tu cherches à atteindre un élément de l'interface qui n'existe pas: checkbox of tab group 2 of window 1 C'est une des difficultés classiques lorsque l'on cherche à simuler l'interface utilisateur. Il se peut que l'application n'ai pas défini les tab dans l'ordre où tu les vois, voir même dans certains cas que tu n'adresses pas la bonne window. Il se peut aussi que ton script soit trop rapide: tu cherches à utiliser la check box de la window 1, quelques milisecondes (ou secondes !) avant que celle-ci ne soit ouverte par l'application. La première chose à tenter est d'ajouter un délai dans le script entre ton keystroke "," et le "tell window 1". Si le délai ajouté ne change rien, il faut considérer alors que, bien que la fenêtre soit ouverte, l'élément que tu cherches n'est pas présent ! N'ayant pas Vectorworks, je ne peux t'aider directement, mais je vais t'expliquer comment tu peux chercher le bon UI element (la case à cocher) par itérations sucessives. 1) tu ouvres Vectorworks et sa fenêtre de préférence 2) tu ouvres l'éditeur Applescript. En bas de la fenêtre, tu sélectionnes pour voir les réponses et tu lances le script suivant: CODE tell application "Vectorworks" to activate -- set active the last actived application delay 1 tell application "System Events" set B to UI element of window 1 of application process "Vectorworks" end tell (je suppose que ta fenêtre de préférence est bien Window 1 !) Dans la partie Réponses en bas de fenêtre, tu dois obtenir la liste des IU elements de la fenêtre de préférence. Il faut que y trouve le tab que tu cherches. Il peut être inclus dans un groupe lui-même. Une fois que tu l'as trouvé, tu corriges le script ci-dessus pour l'étape suivante. Par exemple, si tu as trouvé qu'il s'agit de group 1, la ligne de script devient : CODE set B to UI element of group 1 of window 1 of application process "Vectorworks" Tu relances le script et tu verras le contenu du group 1 et ainsi de suite jusqu'à ce que tu trouves ta checkbox ! Bon courage -------------------- iiMac 24 M1 16Go/1To 13.5.1
iMac 27 i5 3,1GHz 8Go/1To 10.11.6 / 10.6.8 iMac 20 C.Duo 2,6Ghz 8Go/350Go 10.6.8 / 10.11 Mini C.Duo 2,0Ghz 2Go/500Go 10.6.8 |
|
|
![]() ![]() |
Nous sommes le : 7th July 2025 - 19:14 |