deck_bsd
Messages postés1243Date d'inscriptionjeudi 31 mars 2005StatutMembreDernière intervention 3 août 2016
-
4 mai 2006 à 17:00
racpp
Messages postés1909Date d'inscriptionvendredi 18 juin 2004StatutModérateurDernière intervention14 novembre 2014
-
5 mai 2006 à 17:39
Bonjour a tous,
Quelqu'un connai-t-il l'évènement produit lorsque l'utilisateur laisse le boutton cliqué enffoncé?
deck_bsd
Messages postés1243Date d'inscriptionjeudi 31 mars 2005StatutMembreDernière intervention 3 août 20162 4 mai 2006 à 19:18
merci très utile, puis-je encore demander une petite question? coment
faire pour que une fois que je clik sur un bouton, une action s'éxécute
jusq'a ce que je re-clik sur ce bouton?
deck_bsd
Messages postés1243Date d'inscriptionjeudi 31 mars 2005StatutMembreDernière intervention 3 août 20162 4 mai 2006 à 19:33
merci bien chef ;) , mais mon bouton aura la forme d'un bouton normale?
tu vas me dire , code le et tu veras mais bon je suis un impatien et
comme on me tane pour aller manger je ne saurai pas le tester tous de
suite mdr
vecchio56
Messages postés6535Date d'inscriptionlundi 16 décembre 2002StatutMembreDernière intervention22 août 201014 4 mai 2006 à 19:40
Tu pouvais pas le dire plutot racpp??
Effectivement c'est beaucoup plus simple avec une CheckBox
Le style BS_PUSHLIKE va bien lui donner l'apparence d'un bouton normal
deck_bsd
Messages postés1243Date d'inscriptionjeudi 31 mars 2005StatutMembreDernière intervention 3 août 20162 4 mai 2006 à 20:01
mdr vecchio, c'est pas grave qu'il ne l'aye pas dit plutot, ton code ma
bien aidé :D . Merci mais pouvez vous me dire si oui l'action va se
derouler JUSQU'A ce que je re clik une nouvelle fois sur le bouton?
c'est très important svp.
racpp
Messages postés1909Date d'inscriptionvendredi 18 juin 2004StatutModérateurDernière intervention14 novembre 201417 4 mai 2006 à 20:12
Vecchio56 > Je l'avais pas dit plutôt car je ne savais pas exactement ce qu'il voulait faire. Il aura sûrement besoin de ton exemple pour d'autres problèmes.
desk_bsd > Oui, l'action continuera à se dérouler jusqu'au prochain clic.
si etat==1 alors lancement de l'action
si etat==0 alors arret de l'action
Pendant l'etat 1 le bouton reste enfoncé jusqu'au prochain clic.
deck_bsd
Messages postés1243Date d'inscriptionjeudi 31 mars 2005StatutMembreDernière intervention 3 août 20162 4 mai 2006 à 20:17
haaaaaaaaaaaaaaaaaaaaaaaaaaaa, great ! pile ce qu'il me fallait, je
m'en vai coder cela,en tous cas un grand merci a vous deux c'est sympa
de m'avoir aidé.
racpp
Messages postés1909Date d'inscriptionvendredi 18 juin 2004StatutModérateurDernière intervention14 novembre 201417 5 mai 2006 à 17:39
Bonjour,
Tout dépend de la nature de l'action que tu veux lancer puis arrêter.
Si l'action est bloquante alors le Thread est indispensable.
Dans le cas contraire tu peux faire comme ceci:
case WM_COMMAND:
if((HWND)lParam==hBouton)
{
LRESULT etat=SendMessage(hBouton,BM_GETSTATE,0,0)
if(etat & BST_CHECKED) //lancer action ...
else // arrêter action ...
return 0;
}
Il faut donc faire attention à la valeur "etat". Généralement la valeur 9 correspond à l'état enfoncé et 8 à l'état relaché. Voici la liste des états définis dans "winuser.h":
#define BST_UNCHECKED 0x0000
#define BST_CHECKED 0x0001
#define BST_INDETERMINATE 0x0002
#define BST_PUSHED 0x0004
#define BST_FOCUS 0x0008
Puisque le bouton aura le focus au moment de l'appui, donc "etat" sera égal à 9.
Désolé de ne pas l'avoir signalé plus haut car j'avais oublié.