Page 1 sur 1
[R] Majuscule reste coincé après un HotKeySet
Posté : mer. 08 mai 2013 12:25
par Utilisateur 4989 supprimé
Bonjour,
j'ai créé un script où il y a 2 fonctions. La première s'exécute et lorqu'elle se termine, elle attend que MAJ+ENTRER soit appuyé pour continuer. Comme ceci :
► Afficher le texte
Code : Tout sélectionner
Bouton()
Func Bouton()
XXXXXXXXXXX
ToolTip(" MAJ + ENTRER", @DesktopWidth-99, @DesktopHeight-75)
HotKeySet("+{ENTER}", "Bouton_suite")
EndFunc
Func Bouton_suite()
YYYYYYYYYYY
EndFunc
Le problème est que la touche majuscule reste parfois enfoncé (dans AutoIt, pas réellement sur mon clavier).
Après des recherches, j'ai trouvé ça :
http://www.autoitscript.com/wiki/FAQ#Wh ... _script.3F
Cet aide parle d'un
_SendEx et d'un
ControlSend mais mon problème vient d'un
HotKeySet et pas d'un
Send.
Donc comment faire pour décoincer cette touche majuscule après avoir fait MAJ+ENTRER ?
Merci d'avance pour votre aide.
Re: [..] Majuscule reste coincé après un HotKeySet
Posté : mer. 08 mai 2013 20:45
par touslesmatins
Tu as essayé cette commande ?
Send("{CAPSLOCK on}")
Re: [..] Majuscule reste coincé après un HotKeySet
Posté : dim. 12 mai 2013 11:13
par Utilisateur 4989 supprimé
Oui, j'ai déjà essayé mais ça n'a pas marché.
Mon problème provient de la touche majuscule, pas de la touche de verrouillage des majuscules.
Re: [..] Majuscule reste coincé après un HotKeySet
Posté : sam. 18 mai 2013 09:56
par Utilisateur 4989 supprimé
Pas d'idée ?

Re: [..] Majuscule reste coincé après un HotKeySet
Posté : sam. 18 mai 2013 17:47
par mikell
Tu as testé un autre clavier, et tu as essayé des trucs du genre
Code : Tout sélectionner
HotKeySet("+{ENTER}", "Bouton_suite")
Func Bouton_suite()
If _IsPressed("10") Then
Send("{lshift up}")
Send("{rshift up}")
EndIf
; ......
EndFunc
Re: [..] Majuscule reste coincé après un HotKeySet
Posté : dim. 19 mai 2013 11:02
par Utilisateur 4989 supprimé
J'ai ajouté ton code à mon script.
Je te tiens au courant si ta solution fonctionne bien, parce que le problème de cette touche coincé n'est pas tout le temps.
Parfois j'ai aussi des problèmes avec les touches démarrer, ALT et CTRL qui restent aussi coincés. Il faut remplacer les send par quoi pour débloquer ces touches ?
Edit: ton code ne marche, c'est écrit ça :
Code : Tout sélectionner
ERROR: _IsPressed(): undefined function.
If _IsPressed("10")
~~~~~~~~~~~~~~~~~~^
Re: [..] Majuscule reste coincé après un HotKeySet
Posté : dim. 19 mai 2013 12:13
par mikell
Pour _IsPressed il faut l'include #include <Misc.au3>
Le code que j'ai proposé c'est du bricolage, faut tester avec les différentes valeurs de shift pour IsPressed (cf.fichier d'aide)
Tu as vérifié les options d'accessibilité, et testé avec un autre clavier ?
Re: [..] Majuscule reste coincé après un HotKeySet
Posté : mer. 22 mai 2013 02:00
par Utilisateur 4989 supprimé
OK.
J'ai vérifié les paramètres, et tout m'a l'air bon. J'ai testé sur 3 autres claviers, et il y a aussi ce problème, mais pas en permanence, comme chez moi.
Tu sais comment faire pour les touches démarrer, ALT et CTRL qui restent aussi coincés ?
Re: [..] Majuscule reste coincé après un HotKeySet
Posté : lun. 17 juin 2013 13:15
par Utilisateur 4989 supprimé
Pour la touche majuscule, le problème est résolu. Ta solution marche bien. Merci.
Que faut-il remplacer pour les touches démarrer, ALT et CTRL ?
Re: [..] Majuscule reste coincé après un HotKeySet
Posté : lun. 17 juin 2013 23:46
par timmalos
Touche démarrer = impossible, pour le reste lisez la documentation de _IsPressed()
Re: [..] Majuscule reste coincé après un HotKeySet
Posté : mar. 18 juin 2013 18:50
par Utilisateur 4989 supprimé
4 messages plus haut

:
vla a écrit :Il faut remplacer les send par quoi pour débloquer ces touches ?
Re: [..] Majuscule reste coincé après un HotKeySet
Posté : mar. 18 juin 2013 20:03
par mikell
Est-ce que tu as essayé d'adapter le code précédent ?
_IsPressed("10") <= remplacer la valeur numérique par celle qu'il faut
Send("{lshift up}") <= remplacer le lshift par ce qu'il faut
Qu'est-ce que tu appelles "Touche démarrer" ?
Re: [..] Majuscule reste coincé après un HotKeySet
Posté : mar. 18 juin 2013 20:19
par Utilisateur 4989 supprimé
Justement, je sais pas ce qu'il faut mettre pour "remplacer par ce qu'il faut"
Pour la touche démarrer, c'est la touche encadrée en bas de l'image :

J’emploie peut-être le mauvais terme.
Re: [..] Majuscule reste coincé après un HotKeySet
Posté : mar. 18 juin 2013 21:06
par mikell
Timmalos avait compris (quoique..) mais moi pas ^^
Dans l'aide pour Send ça correspond à la touche WIN, et je suis pas sûr que ce soit impossible, faudrait tester
Sinon "remplacer par ce qu'il faut" ça veut dire : remplacer shift par alt ou lshift par lalt, etc, selon ce qui est écrit dans l'aide pour la touche souhaitée
Ces tests-là je peux pas les faire, n'ayant pas pu reproduire le bug sur mon pc
Re: [..] Majuscule reste coincé après un HotKeySet
Posté : mar. 18 juin 2013 23:36
par Utilisateur 4989 supprimé
OK, j'ai fais ça :
Code : Tout sélectionner
If _IsPressed("11") Then
Send("{LCTRL UP}")
Send("{RCTRL UP}")
MsgBox(0,"","Touche CTRL débloqué")
EndIf
If _IsPressed("12") Then
Send("{LALT UP}")
Send("{RALT UP}")
MsgBox(0,"","Touche ALT débloqué")
EndIf
Comme le problème n'est pas tout le temps, je te tiens au courant si ça fonctionne bien.
Pour la touche WIN, ça correspondrai à HOME pour _IsPressed ?
Re: [..] Majuscule reste coincé après un HotKeySet
Posté : mer. 19 juin 2013 15:20
par timmalos
La touche Win ne peut pas etre simulée avec AutoIt, car c'est une touche speciale gerée par Windows.
Donc toujours impossible comme ecrit plus haut

Re: [..] Majuscule reste coincé après un HotKeySet
Posté : mer. 19 juin 2013 19:58
par mikell
le fichier d'aide pour Send a écrit :{LWIN} Left Windows key
{RWIN} Right Windows key
{LWINDOWN} Holds the left Windows key down until {LWINUP} is sent
{RWINDOWN} Holds the right Windows key down until {RWINUP} is sent
Send("{LWIN}") fonctionne sur mon pc
Par contre le If_Ispressed("91") ne marche pas, pour détecter une touche Win le moyen à utiliser est un peu plus compliqué

Un {LWINUP} et un {RWINUP} envoyés systématiquement après un emploi de la touche Win pourraient marcher
Re: [..] Majuscule reste coincé après un HotKeySet
Posté : jeu. 20 juin 2013 15:20
par Utilisateur 4989 supprimé
OK, je teste et je te tiens au courant. Merci.
Re: [..] Majuscule reste coincé après un HotKeySet
Posté : mar. 09 juil. 2013 11:34
par Utilisateur 4989 supprimé
Après plusieurs tests, ça marche parfaitement.
Voilà ce que j'ai fais :
► Afficher le texte
Code : Tout sélectionner
If _IsPressed("11") Then
Send("{LCTRL UP}")
Send("{RCTRL UP}")
EndIf
If _IsPressed("12") Then
Send("{LALT UP}")
Send("{RALT UP}")
EndIf
Send("{LWINUP}")
Send("{RWINUP}")
Merci à tous pour votre aide.
Sujet résolu.