2010-01-02 11 views
10

Je veux un script en appuyant sur F1 pour qu'AutoHotkey maintienne le bouton gauche de la souris enfoncé. Je veux ensuite que le script relâche la souris une fois que j'appuie à nouveau sur la touche.Maintenez le bouton gauche de la souris enfoncé dans AutoHotkey

Comment puis-je faire cela?

+3

Pour ceux qui sont prêts à fermer le fil: il est une question de programmation, AutoHotkey est un langage de programmation. – PhiLho

+0

@PhiLho: Merci d'avoir signalé cela. J'ai presque fermé ça moi-même. –

+1

@Pizza Overflow: Vous pouvez envisager d'inclure un extrait de code court dans les questions AHK pour éviter toute confusion. Si vous insérez juste un peu de code montrant ce que vous avez essayé jusqu'ici, cela devrait suffire à ce que les gens ne verront pas par erreur vos questions comme «ne concernant pas la programmation». –

Répondre

13

J'utiliser Cliquez vers le bas et cliquez jusqu'à

Click est généralement préféré sur MouseClick car il compense automatiquement si l'utilisateur a échangé les boutons gauche et droit de la souris via le panneau de contrôle du système.

F1:: 
    alt := not alt 
    if (alt) 
    { 
     Click down 
    } 
    else 
    { 
     Click up 
    } 
Return 
+0

J'ai dû ajouter 'Return' à la fin du code de la procédure de raccourci pour que cela fonctionne pour moi. 'F1 :: alt: = not alt si (alt) {Cliquez vers le bas} else {Click up} Return' –

0

Mmm, je suis un peu rouillé dans la programmation AHK, mais voici ce que j'ai essayé, semble fonctionner:

F1:: 
    alt := not alt 
    If (alt) 
    { 
    MouseClick Left, 217, 51, , , D 
    } 
    Else 
    { 
    MouseClick Left, 217, 51, , , U 
    } 
Return 
+0

L'utilisation de MouseClick est exagérée et la rend plus compliquée. Cliquez sur Haut/Bas devrait suffire. – syaz

+1

Oui, c'est ce que DaMacc ... – PhiLho

3

Voici une seule ligne dans le cas où quelqu'un est intéressé:

F1::Click % GetKeyState("LButton") ? "Up" : "Down" 
+0

Puis-je utiliser ce one-liner pour ** Right Mouse Click **? Changer '' LButton'' -> '' RButton'' semble toujours déclencher le clic gauche de la souris .... –

+1

Oui. 'F1 :: Clic droit% GetKeyState (" RButton ")? "Up": "Down" 'pourrait faire le travail. Si ce n'est pas le cas, faites 'F1 :: Click%" right "(GetKeyState (" RButton ")?" Up ":" Down ")' – Forivin

+0

Parfait! '' F1 :: Click% "right" (GetKeyState ("RButton")? "Up": "Down") '' fonctionne comme prévu! Merci Forivin! –

Questions connexes