SDL mouse repeat

countag Messages postés 17 Date d'inscription samedi 22 mai 2004 Statut Membre Dernière intervention 25 mars 2006 - 9 févr. 2006 à 20:25
MrdJack Messages postés 146 Date d'inscription jeudi 22 avril 2004 Statut Membre Dernière intervention 8 mars 2008 - 10 févr. 2006 à 14:01
bonjour
je voudrais savoir si y a une astuce pour faire un repeat button pour un boutton de souris, je sais qu il y a : SDL_keyenablerepeat pour le clavier mais je trouve pas pour une souris :/ quelqu un peut m aide svp ?

3 réponses

wxccxw Messages postés 755 Date d'inscription samedi 15 mai 2004 Statut Membre Dernière intervention 30 janvier 2011
9 févr. 2006 à 20:29
tu veux faire quoi au juste qu'entend tu par repeat !
0
countag Messages postés 17 Date d'inscription samedi 22 mai 2004 Statut Membre Dernière intervention 25 mars 2006
9 févr. 2006 à 20:41
ben j ai un SDL_MOUSEBUTTONDOWN puis apres SDL_BUTTON_LEFT, je veux que quand on reste appuyer sur BUTTON_LEFT et qu on deplace la souris ca applique les parametre de la fonction que j ai mis dans SDL_BUTTON_LEFT.
0
MrdJack Messages postés 146 Date d'inscription jeudi 22 avril 2004 Statut Membre Dernière intervention 8 mars 2008 2
10 févr. 2006 à 14:01
hé ben ton truc est simple a réaliser, ca marche aussi pour les evenements claviers :

tu utilises une variable bool représentatant l'etat de ton bouton/ ta
touche (enfoncé ou relaché), puis lorsque tu as un DOWN, tu passe ta
variable a vrai, et lors d'un UP, tu la repasses à faux.

ainsi, tu n'a plus qu'a faire une condition en dehors de ta boucle d'evenement pour savoir si tu dois effectuer l'action oupa.



et si tu utilises beaucoup plus de touches, tu peux initialiser un
tableau de int, et lors d'un up, tu passe a vrai
tableau[SDL_BUTTON_LEFT], tableau[SDL_KEYLEFT] etc...

ainsi, pour chaque touche du clavier et bouton de la souris, tu a un état conservé dans ce tableau.



sinon, il me semble qu'il y a une fonction dans keyboard.h nommée
getKeyState(key);. je ne susi pas sur qu'elle fonctionne avec la souris.



@++
0
Rejoignez-nous