[R] HotKeySet : Fin de l'assignation d'une fonction à une touche
Règles du forum
- Merci de consulter la section "Règles du forum" et plus particulièrement "Règles et Mentions Légales du site autoitscript.fr" avant d'écrire un message.
[R] HotKeySet : Fin de l'assignation d'une fonction à une touche
Bonjour,
Est-il possible de mettre fin à l'assignation HotKeySet d'une fonction à une touche clavier, autrement que par la sortie du programme ?
Je vous remercie.
Est-il possible de mettre fin à l'assignation HotKeySet d'une fonction à une touche clavier, autrement que par la sortie du programme ?
Je vous remercie.
Modifié en dernier par GMH le jeu. 13 août 2020 09:23, modifié 1 fois.
- jchd
- AutoIt MVPs (MVP)
- Messages : 2282
- Enregistré le : lun. 30 mars 2009 22:57
- Localisation : Sud-Ouest de la France (43.622788,-1.260864)
- Status : Hors ligne
Re: [..] HotKeySet : Fin de l'assignation d'une fonction à une touche
Oui, voir l'aide de ... HotKeySet().
La cryptographie d'aujourd'hui c'est le taquin plus l'électricité.
Re: [..] HotKeySet : Fin de l'assignation d'une fonction à une touche
L'alinéa de l'aide concernant ma question est-il celui-ci ?
Si oui, rien n'est désactivé. Lorsque je lance un logiciel quelconque, tel que Notepad par exemple, le clavier ne répond pas tant que mon programme AutoIT n'est pas fermé.
Désigne-t-on par "the AutoIt Tray icon" l'icône figurant un trait affichée à gauche de la croix de fermeture de la fenêtre ?2) If you have paused the script by clicking on the AutoIt Tray icon, any hotkeys pressed during this paused state are ignored.
Si oui, rien n'est désactivé. Lorsque je lance un logiciel quelconque, tel que Notepad par exemple, le clavier ne répond pas tant que mon programme AutoIT n'est pas fermé.
- Tlem
- Site Admin
- Messages : 11784
- Enregistré le : ven. 20 juil. 2007 21:00
- Localisation : Bordeaux
- Status : Hors ligne
Re: [..] HotKeySet : Fin de l'assignation d'une fonction à une touche
Bonsoir.
L'icône en question est celui qui apparaît en bas à droite de votre barre de tâche, à proximité de l'heure.
Concernant votre réponse, voici l'extrait de l'aide qui y répond :
Bonne soirée
L'icône en question est celui qui apparaît en bas à droite de votre barre de tâche, à proximité de l'heure.
Concernant votre réponse, voici l'extrait de l'aide qui y répond :
Code : Tout sélectionner
function [optional] The name of the function to call when the key is pressed. Not specifying this parameter will unset a previous hotkey.
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é".
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é".
- TommyDDR
- Modérateur
- Messages : 2102
- Enregistré le : mar. 22 juil. 2008 21:55
- Localisation : Nantes
- Status : Hors ligne
Re: [..] HotKeySet : Fin de l'assignation d'une fonction à une touche
3.1415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679
Re: [R] HotKeySet : Fin de l'assignation d'une fonction à une touche
J'avais testé cette solution mais elle me conduisait à une erreur parce que je l'avais mal comprise. J'ôtais la fonction entre les guillemets au lieu de supprimer l'argument. Je codais HotKeySet("a","") au lieu de coder HotKeySet("a").
Je vous remercie de m'avoir redirigé vers cette solution que j'avais complètement oubliée pour me perdre dans un codage de mon invention qui m'a pris des heures sans résultats probants.
Encore merci.
Je vous remercie de m'avoir redirigé vers cette solution que j'avais complètement oubliée pour me perdre dans un codage de mon invention qui m'a pris des heures sans résultats probants.
Encore merci.
- jchd
- AutoIt MVPs (MVP)
- Messages : 2282
- Enregistré le : lun. 30 mars 2009 22:57
- Localisation : Sud-Ouest de la France (43.622788,-1.260864)
- Status : Hors ligne
Re: [R] HotKeySet : Fin de l'assignation d'une fonction à une touche
Il vaut mieux passer une fonction plutôt que son nom sous forme chaîne, e.g. :
HotKeySet("a", _MaFonction)
au lieu de
HotKeySet("a", "_MaFonction")
Du coup l'inactivation de ce raccourci devient triviale et sans ambiguité :
HotKeySet("a")
Les fonctions sont des types de première classe depuis un bout de temps déjà.
HotKeySet("a", _MaFonction)
au lieu de
HotKeySet("a", "_MaFonction")
Du coup l'inactivation de ce raccourci devient triviale et sans ambiguité :
HotKeySet("a")
Les fonctions sont des types de première classe depuis un bout de temps déjà.
La cryptographie d'aujourd'hui c'est le taquin plus l'électricité.
Re: [R] HotKeySet : Fin de l'assignation d'une fonction à une touche
Effectivement, ça fonctionne sans guillemets de part et d'autre du nom de la fonction.
Même chose avec les fonctions appelées par les contrôles. Codage plus rapide ...
Qu'entend-on par "fonction type de première classe" ?
Même chose avec les fonctions appelées par les contrôles. Codage plus rapide ...
Qu'entend-on par "fonction type de première classe" ?
- jchd
- AutoIt MVPs (MVP)
- Messages : 2282
- Enregistré le : lun. 30 mars 2009 22:57
- Localisation : Sud-Ouest de la France (43.622788,-1.260864)
- Status : Hors ligne
Re: [R] HotKeySet : Fin de l'assignation d'une fonction à une touche
Je veux dire que c'est un type à part entière (deux types même) :
Ca évite de passer une chaîne qui contient un nom de fonction erroné et de se prendre un crash le jour où l'appel se fait, ça évite aussi que Au3Stripper ne sache pas de quoi il retourne, etc.
Code : Tout sélectionner
Local $f = MsgBox
ConsoleWrite(VarGetType($f) & @LF)
$f = _Fonction
ConsoleWrite(VarGetType($f) & @LF)
$f = "MsgBox"
ConsoleWrite(VarGetType($f) & @LF) ; ne nous apporte rien
Func _Fonction()
EndFunc
La cryptographie d'aujourd'hui c'est le taquin plus l'électricité.
- mikell
- Spammer !
- Messages : 6292
- Enregistré le : dim. 29 mai 2011 17:32
- Localisation : Deep Cévennes
- Status : Hors ligne
Re: [R] HotKeySet : Fin de l'assignation d'une fonction à une touche
Le problème c'est que comme ce n'est pas mentionné dans l'aide, un utilisateur ne va pas prendre le risque de faire une erreur de syntaxe
A moins d'être un scientifique (comme toi) ou un pervers (comme moi, quoique ...)

" L'échec est le fondement de la réussite. " (Lao-Tseu )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
- jchd
- AutoIt MVPs (MVP)
- Messages : 2282
- Enregistré le : lun. 30 mars 2009 22:57
- Localisation : Sud-Ouest de la France (43.622788,-1.260864)
- Status : Hors ligne
Re: [R] HotKeySet : Fin de l'assignation d'une fonction à une touche
J'ai commis une révision de l'aide sur ce sujet car en effet il y avait pas mal de manques et surtout une classification bor*élique des types.
La version révisée est dans les tuyaux et devrait sortir ... un jour.
La seule mention que j'avais repéré est là dans la version EN :
Function Notes
Functions in AutoIt are first class objects. Among other things, that means you can assign a function to a variable, pass it around as an argument or return from another function.
Aside from certain specific scope-regarding declaration rules (being that the names of the built-in functions are reserved and of UDFs' can be overwritten only locally), the names of functions do not have special status in the language.
#include <MsgBoxConstants.au3>
Local $vFunc = MsgBox
$vFunc($MB_OK, "Hi there!", "Lovely day today.")
et dans le changelog :
3.3.10.0 (23rd December, 2013) (Release)
Added: Functions can now be referenced in variables and the function can be called through the variable.
Added: FuncName().
Added: Built-in functions that take a callback now be passed directly in addition to the old method of passing as a string. Built-in functions can also be passed now (be careful that the function you pass matches what the caller expects).
Donc cette possibilité existe depuis fort longtemps mais n'a jamais été documentée complètement.
La version révisée est dans les tuyaux et devrait sortir ... un jour.
La seule mention que j'avais repéré est là dans la version EN :
Function Notes
Functions in AutoIt are first class objects. Among other things, that means you can assign a function to a variable, pass it around as an argument or return from another function.
Aside from certain specific scope-regarding declaration rules (being that the names of the built-in functions are reserved and of UDFs' can be overwritten only locally), the names of functions do not have special status in the language.
#include <MsgBoxConstants.au3>
Local $vFunc = MsgBox
$vFunc($MB_OK, "Hi there!", "Lovely day today.")
et dans le changelog :
3.3.10.0 (23rd December, 2013) (Release)
Added: Functions can now be referenced in variables and the function can be called through the variable.
Added: FuncName().
Added: Built-in functions that take a callback now be passed directly in addition to the old method of passing as a string. Built-in functions can also be passed now (be careful that the function you pass matches what the caller expects).
Donc cette possibilité existe depuis fort longtemps mais n'a jamais été documentée complètement.
La cryptographie d'aujourd'hui c'est le taquin plus l'électricité.
- mikell
- Spammer !
- Messages : 6292
- Enregistré le : dim. 29 mai 2011 17:32
- Localisation : Deep Cévennes
- Status : Hors ligne
Re: [R] HotKeySet : Fin de l'assignation d'une fonction à une touche
C'est d'un surréalisme macronien
Voilà une propriété qui existe depuis 2013 mais que personne (ou presque) ne connait parce que la seule mention en est un obscur entrefilet caché dans une partie de l'aide que personne (ou presque) ne lit jamais, et dont la seule explication à peu près claire se trouve dans le changelog
Built-in functions can now be passed directly in addition to the old method of passing as a string

Voilà une propriété qui existe depuis 2013 mais que personne (ou presque) ne connait parce que la seule mention en est un obscur entrefilet caché dans une partie de l'aide que personne (ou presque) ne lit jamais, et dont la seule explication à peu près claire se trouve dans le changelog
Built-in functions can now be passed directly in addition to the old method of passing as a string

" L'échec est le fondement de la réussite. " (Lao-Tseu )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
" Plus ça rate, plus on a de chances que ça marche " (les Shadoks )
- jchd
- AutoIt MVPs (MVP)
- Messages : 2282
- Enregistré le : lun. 30 mars 2009 22:57
- Localisation : Sud-Ouest de la France (43.622788,-1.260864)
- Status : Hors ligne
Re: [R] HotKeySet : Fin de l'assignation d'une fonction à une touche
Eh oui, comme avec les contrats d'assurance ou de crédit, il faut lire tout ce qui est écrit en petits caractères ; ici, le changelog à chaque release.
Je sais bien que le suivi de ce projet est bien trop lâche et mérite une réforme de fond mais je ne suis aucunement en position de faire quoi que ce soit d'efficace à ce niveau.
Je sais bien que le suivi de ce projet est bien trop lâche et mérite une réforme de fond mais je ne suis aucunement en position de faire quoi que ce soit d'efficace à ce niveau.
La cryptographie d'aujourd'hui c'est le taquin plus l'électricité.