|
Remplacer le clic sur un bouton |
Iniciado por MANDIN Claude, 19,ago. 2019 09:32 - 6 respuestas |
| |
| | | |
|
| |
Publicado el 19,agosto 2019 - 09:32 |
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. |
| |
| |
| | | |
|
| | |
| |
Miembro registrado 3.889 mensajes Popularité : +227 (347 votes) |
|
Publicado el 19,agosto 2019 - 10:25 |
| |
| |
| | | |
|
| | |
| |
Miembro registrado 21 mensajes Popularité : +5 (5 votes) |
|
Publicado el 22,agosto 2019 - 07:03 |
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. |
| |
| |
| | | |
|
| | |
| |
Miembro registrado 3.889 mensajes Popularité : +227 (347 votes) |
|
Publicado el 22,agosto 2019 - 07:49 |
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 |
| |
| |
| | | |
|
| | |
| |
Miembro registrado 72 mensajes Popularité : +10 (10 votes) |
|
Publicado el 22,agosto 2019 - 17:40 |
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) Mensaje modificado, 22,agosto 2019 - 17:43 |
| |
| |
| | | |
|
| | |
| |
Miembro registrado 21 mensajes Popularité : +5 (5 votes) |
|
Publicado el 22,agosto 2019 - 18:32 |
Je vous remercie, je vais essayer ce code.
Encore merci a tous les deux, de vous être penché sur mon humble personne. |
| |
| |
| | | |
|
| | |
| |
Miembro registrado 21 mensajes Popularité : +5 (5 votes) |
|
Publicado el 23,agosto 2019 - 15:12 |
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()
Mensaje modificado, 23,agosto 2019 - 15:14 |
| |
| |
| | | |
|
| | | | |
| | |
|