|
Remplacer le clic sur un bouton |
Iniciado por MANDIN Claude, ago., 19 2019 9:32 AM - 6 respostas |
| |
| | | |
|
| |
Publicado em agosto, 19 2019 - 9:32 AM |
Bonjour, Je souhaite remplacer l'action du clic sur un bouton par l'action bouton enfoncé. Dans le code du bouton j'ai bien sélectionné l'ajout de traitement "Bouton gauche enfoncé" , mais rien ne se produit car l'action 'Clic' reste prioritaire.
Y a t il une solution pour Inhiber le clic et permettre l'interception du bouton enfoncé. Par avance je vous remercie. |
| |
| |
| | | |
|
| | |
| |
Membro registado 3.889 mensagems Popularité : +227 (347 votes) |
|
Publicado em agosto, 19 2019 - 10:25 AM |
| |
| |
| | | |
|
| | |
| |
Membro registado 21 mensagems Popularité : +5 (5 votes) |
|
Publicado em agosto, 22 2019 - 7:03 AM |
Bonjour, et déjà merci de t être penché sur ma question. J'ai déjà essayé ce que propose, mais j'ai toujours le même résultat. Car l'action ne se poursuit que lorsque l'on relâche le bouton. Moi je cherche a ce qu'une incrémentation se poursuive tant que le bouton est enfoncé. Je recherche a peu près le même fonctionnement qu'un potentiomètre. Mais avec un pas en Reel "0,1" . Et d'un borne Min à -20 et une borne MAX à 50. |
| |
| |
| | | |
|
| | |
| |
Membro registado 3.889 mensagems Popularité : +227 (347 votes) |
|
Publicado em agosto, 22 2019 - 7:49 AM |
Tu peux essayer de voir du côté du champ spin, ou du champ prédéfini "Valeur numérique" (Champ prédéfini/Superchamp)
-- Il y a peut être plus simple, mais, ça tourne |
| |
| |
| | | |
|
| | |
| |
Membro registado 72 mensagems Popularité : +10 (10 votes) |
|
Publicado em agosto, 22 2019 - 5:40 PM |
Je sais pas s'il y a d'autre manière, mais de celle-ci ca semble fonctionner.
Tu doit inclure la bibliothèque au démarrage de ton projet EXTERNE "KeyConst.wl"
Procédure de la fenêtre
Evénement(_DemarreSpin, BTN_SansNom1..NomComplet, WM_LBUTTONDOWN) Evénement(_ArreteSpin, "*.*", WM_LBUTTONUP)
Procedure _DemarreSpin() n est un entier = LIB_SansNom1 n++ LIB_SansNom1 = n
TimerSys(_Spin, 100ms, 25)
Procedure _Spin()
n est un entier = LIB_SansNom1 n++ LIB_SansNom1 = n
Procedure _ArreteSpin()
FinTimerSys(25) Mensagem modificada, agosto, 22 2019 - 5:43 PM |
| |
| |
| | | |
|
| | |
| |
Membro registado 21 mensagems Popularité : +5 (5 votes) |
|
Publicado em agosto, 22 2019 - 6:32 PM |
Je vous remercie, je vais essayer ce code.
Encore merci a tous les deux, de vous être penché sur mon humble personne. |
| |
| |
| | | |
|
| | |
| |
Membro registado 21 mensagems Popularité : +5 (5 votes) |
|
Publicado em agosto, 23 2019 - 3:12 PM |
Un grand merci, j'ai pu solutionner mon problème. Je vous joins le code que j'ai saisi afin d'avoir ce que je souhaitais. Bien sur, il n'est pas parfait et je vais continuer à l'adapter. Cela m'a enlever une petite épine du pied. Pour le bouton SPIN, J'ai créé deux boutons que j'ai regroupé, et j'y ai mis la détection d’événements dans l'initialisation des boutons respectifs. Je dois maintenant ajouter les Bornes Minimales et maximales
Procedure MaFenêtre()
grPasSpin est un réel = 0.1
gnBtn_Spin est un entier
Evénement(_ArreteSpin, "*.*", WM_LBUTTONUP)
[FIN D'INITIALISATION de LA FENETRE] Affichage()
[CHAMP de Saisie SAI_TempExt]
[BOUTON MOINS]
Evénement(Clic_Moins, MoiMême..NomComplet, WM_LBUTTONDOWN) Evénement(_ArreteSpin, "*.*", WM_LBUTTONUP)
[BOUTON PLUS]
Evénement(Clic_Plus, MoiMême..NomComplet, WM_LBUTTONDOWN)
[PROCEDURES LOCALES]
Procedure _ArreteSpin() FinTimerSys(25)
Procedure _DemarreSpin() SELON gnBtn_Spin CAS 1 TimerSys(_SpinMoins, 100 ms, 25) CAS 2 TimerSys(_SpinPlus, 100 ms, 25) AUTRES CAS _ArreteSpin() FIN
Procedure _SpinMoins() n est un réel= Val(SAI_TempExt) n-=grPasSpin SAI_TempExt = NumériqueVersChaîne(n) Affichage()
Procedure _SpinPlus() n est un réel = Val(SAI_TempExt) n+=grPasSpin
SAI_TempExt= NumériqueVersChaîne(n) Affichage()
Procedure Affichage()
SI SAI_TempExt<0 ALORS LIB_TempExt..Couleur=iRougeClair SINON LIB_TempExt..Couleur=iNoir FIN
LIB_TempExt=NumériqueVersChaîne(SAI_TempExt,"-10.1f" )
SI Val(ExtraitChaîne(SAI_TempExt,2,"."))>0 ALORS LIB_TempExt=SansEspace(Remplace(LIB_TempExt,".","°")) SINON LIB_TempExt=SansEspace(ExtraitChaîne(SAI_TempExt,1,".")+"°") FIN
Procedure Clic_Moins() gnBtn_Spin = 1 _DemarreSpin()
Procedure Clic_Plus() gnBtn_Spin = 2 _DemarreSpin()
Mensagem modificada, agosto, 23 2019 - 3:14 PM |
| |
| |
| | | |
|
| | | | |
| | |
|