[R] Appuyer sur deux boutons en même temps

Aide sur les Interfaces Graphique Utilisateurs (GUI).
Règles du forum
.
Répondre
erreur
Niveau 3
Niveau 3
Messages : 36
Enregistré le : ven. 06 févr. 2009 21:35
Status : Hors ligne

[R] Appuyer sur deux boutons en même temps

#1

Message par erreur »

Bonjour à tous,

je voulais savoir s'il était possible que l'Autoit pouvait reconnaitre deux touches en même temps avec la fonction _IsPressed() ou avec HotKeySet().

Merci de vos réponse.
Modifié en dernier par erreur le dim. 08 mars 2009 18:02, modifié 1 fois.
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11791
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [..] Appuyer sur deux boutons en même temps

#2

Message par Tlem »

Pour HotKeySet, il suffit de lire ce qui est écrit dans la documentation :
HotKeySet ( "key" [, "function"] )
key The key combination to use as the hotkey. Same format as Send().
Donc Oui.

Pour _IsPressed la doc dit :
_IsPressed($sHexKey[, $vDLL = 'user32.dll'])
$sHexKey Key to check for
Donc une seule touche.
Par contre rien ne vous empêche de faire une fonction qui test en suivant plusieurs touches et donc se rapprocherais de la demande.
Sinon, vous pouvez utilisez ceci : http://www.autoitscript.com/forum/index ... opic=88562
Thierry

Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...

Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
erreur
Niveau 3
Niveau 3
Messages : 36
Enregistré le : ven. 06 févr. 2009 21:35
Status : Hors ligne

Re: [..] Appuyer sur deux boutons en même temps

#3

Message par erreur »

Si on utilise la fonction HotKeySet() peut-on faire une combinaison de touche autre qu'avec CTRL, ALT, SHIFT...
Par exemple pourrait-on faire vérifier si cette combinaison est appuyée : z + "flèche du haut" ?

Merci de vos réponse.
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11791
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [..] Appuyer sur deux boutons en même temps

#4

Message par Tlem »

Dans mon post précédent, la phrase soulignée : The key combination
signifie combinaison de touches.
Donc cela répond à votre question.
Thierry

Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...

Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
erreur
Niveau 3
Niveau 3
Messages : 36
Enregistré le : ven. 06 févr. 2009 21:35
Status : Hors ligne

Re: [..] Appuyer sur deux boutons en même temps

#5

Message par erreur »

Je ne comprend pas, comment dois-je écrire la combinaison ?
HotKeySet("z{UP}","fonction") ?
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11791
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [..] Appuyer sur deux boutons en même temps

#6

Message par Tlem »

Est-ce qu'il vous arrive de lire l'aide de temps en temps ???
Documentation de la commande Send()
Thierry

Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...

Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
erreur
Niveau 3
Niveau 3
Messages : 36
Enregistré le : ven. 06 févr. 2009 21:35
Status : Hors ligne

Re: [..] Appuyer sur deux boutons en même temps

#7

Message par erreur »

Oui mais dans ce document il n'explique que les combinaisons avec CTRL, ALT, SHIFT...
Mais sachant que je parle très mal Anglais, il est fort probable que je n'ai pas du comprendre comment faire...
Pouvez-vous m'expliquer ?
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11791
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [..] Appuyer sur deux boutons en même temps

#8

Message par Tlem »

Même en ne parlant pas beaucoup Anglais, un minimum est requis.
Et dans le lien que je vous ait donné, il y à des choses évidentes ...
'+'
This tells AutoIt to send a SHIFT keystroke, therefore Send("Hell+o") would send the text "HellO". Send("!+a") would send "ALT+SHIFT+a".
'!'
This tells AutoIt to send an ALT keystroke, therefore Send("This is text!a") would send the keys "This is text" and then press "ALT+a".
'^'
This tells AutoIt to send a CONTROL keystroke, therefore Send("^!a") would send "CTRL+ALT+a".
'#'
The hash now sends a Windows keystroke; therefore, Send("#r") would send Win+r which launches the Run dialog box.
Thierry

Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...

Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
erreur
Niveau 3
Niveau 3
Messages : 36
Enregistré le : ven. 06 févr. 2009 21:35
Status : Hors ligne

Re: [..] Appuyer sur deux boutons en même temps

#9

Message par erreur »

Oui mais cela ne m'avance pas, c'est combinaisons de touches contiennent les touches CTRL, ALT, SHIFT ... Moi je voudrais savoir comment comment puis-je vérifier qu'on appuie sur "z" + "la flèche haut" en même temps.
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11791
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [..] Appuyer sur deux boutons en même temps

#10

Message par Tlem »

Pour la flèche haut, si vous aviez lu la doc de la commande Send() vous auriez trouvé ceci :
{UP} Up arrow
.

Cela dit, j'avais compris au départ que vous parliez de la touche 'Shift' ... Autant pour moi.
Après quelques tests il semble que la combinaison 'Flèche Haut + z' ne fonctionne pas avec HotKeySet.

Je vous suggère donc de vous orienter vers la fonction _IsPressedEx dont je vous ai donné le lien précédemment.

Edit : Je ne sais pas pourquoi je suis parti dans une telle complication, mais la fonction _IsPressed ce suffit à elle même.
Il vous suffit de faire deux contrôles consécutifs.
Thierry

Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...

Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
erreur
Niveau 3
Niveau 3
Messages : 36
Enregistré le : ven. 06 févr. 2009 21:35
Status : Hors ligne

Re: [R] Appuyer sur deux boutons en même temps

#11

Message par erreur »

D'accord merci pour votre aide.
Répondre