1 votes

Comment utiliser le script AppleScript GUI pour modifier la vitesse de la souris ?

J'utilise un Mac à l'école qui réinitialise tous les paramètres une fois déconnecté. J'aimerais définir automatiquement certains paramètres dans les préférences système.

J'ai trouvé une réponse ici qui décrit comment changer le comportement naturel de défilement dans les préférences du système. Malheureusement, cela ne permet pas de modifier la vitesse de la souris. En outre, j'ai remarqué que la définition du numéro de la case à cocher dans AppleScript est un processus très aléatoire. La case à cocher 1 peut activer une case à cocher en bas d'une page de paramètres particulière, tandis que la case à cocher 2 peut en activer une quelque part au milieu. Je ne suis pas certain de pouvoir trouver comment modifier un curseur en raison de ce caractère "aléatoire".

Quelqu'un sait-il comment modifier le curseur en utilisant un script GUI ?

4voto

user3439894 Points 52496

Comme vous l'avez sans doute découvert, Scripting de l'interface utilisateur a ses problèmes et, dans ce cas particulier, la préférences de la souris le code peut varier en fonction de la version du système d'exploitation et du type d'ordinateur. souris Il est donc difficile de vous fournir code qui fonctionnera absolument dans votre scénario d'utilisation. Pour vous montrer, je vais utiliser deux exemples de code qui fonctionnent pour moi sur mon système.

Sur un MacBook Pro avec un Souris magique Apple sous OS X 10.8.6 les éléments suivants exemple ApplesScript code modifie le valeur de la Suivi du site glissière :

if application "System Preferences" is running then ¬
    tell application "System Preferences" to quit
delay 1
tell application "System Preferences"
    reveal anchor "mouseTab" of pane id "com.apple.preference.mouse"
    delay 1
    tell application "System Events"
        click of radio button 1 of tab group 1 of window 1 of application process "System Preferences"
        set value of slider 1 of tab group 1 of window 1 of application process "System Preferences" to 4
    end tell
    quit
end tell

Apple Magic Mouse preferences

Dans un souris générique scénario, les éléments suivants exemple ApplesScript code modifie le valeur de la Vitesse de suivi glissière :

if application "System Preferences" is running then ¬
    tell application "System Preferences" to quit
delay 1
tell application "System Preferences"
    reveal anchor "mouseTab" of pane id "com.apple.preference.mouse"
    delay 1
    tell application "System Events"
        set value of slider 3 of window 1 of application process "System Preferences" to 4
    end tell
    quit
end tell

generic mouse preferences


El plage de valeurs de la Vitesse de suivi glissière es un valeur décimale entre 0 y 9 . Notez que le plage de valeurs pour l'autre glissières différents, Vitesse du double-clic est 0 à 10 et Vitesse de défilement est 0 à 7 . Notez également que ces gammes peut varier en fonction de la version du système d'exploitation et du matériel.

Avec Préférences du système ouvert à la Souris panneau pour un souris générique utilisez la ligne suivante de code sur scriptÉditeur pour obtenir le propriétés de la glissières :

tell application "System Events" to get properties of every slider of window 1 of application process "System Preferences"

Vous verrez le valeurs minimales/maximales ainsi que le valeur ils sont actuellement réglés sur. Ce dernier point est important à connaître après avoir effectué un réglage manuel à votre convenance, puis l'utiliser dans le cadre de la fonction script pour effectuer les modifications souhaitées.

Notez qu'avec Scripting de l'interface utilisateur le site valeur de la delay commandes peuvent devoir être adaptés à votre environnement ou à des éléments supplémentaires. delay commandes peuvent être nécessaires, le cas échéant.

Notez également que le exemple ApplesScript code est codé pour fermer d'abord Préférences du système si c'est ouvert. C'est fait pour ne pas avoir à voir le événements qui a lieu au fur et à mesure que le danse graphique de certains Scripting de l'interface utilisateur peut être distrayant.


Vous verrez la différence entre les deux versions de exemple ApplesScript code dans la seconde, non seulement elle n'a pas ou n'a pas besoin de la click of radio button ... commande le slider numéro est différent, ainsi que son name . Dans la première version, c'est slider 1 y Tracking alors que dans le second, c'est slider 3 y Tracking Speed . Il n'y a pas non plus de tab group dans la deuxième version.

Pour répondre à la à l'aveuglette point mentionné dans le PO, avec le souris générique scénario, il y a trois glissières Ainsi, la ligne suivante de code para el vitesse de suivi :

set value of slider 3 of window 1 of application process "System Preferences" to 4

Peut être écrit comme :

set value of every slider of window 1 of application process "System Preferences" whose name contains "track" to 4

Maintenant tu n'as pas besoin de savoir ce que numéro le site slider est qu'il agira sur le seul dont le nom contient "track", qui dans ce cas sera slider 3 . Le même concept peut s'appliquer à d'autres UI elements aussi.

Vous pouvez également vous adresser à la slider par son name par exemple :

set value of slider "Tracking Speed" of window 1 of application process "System Preferences" whose name contains "track" to 4

Il en va de même pour les autres Éléments de l'interface utilisateur qui ont un name propriété dans ce cas, par exemple, window 1 est aussi : window "Mouse"


Note : Le site exemple ApplesScript code est juste cela et ne contient pas de gestion des erreurs selon ce qui est approprié/nécessaire/souhaité. Il incombe à l'utilisateur d'ajouter traitement des erreurs selon ce qui est approprié/nécessaire/souhaité.

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X