IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Programmation multimédia/Jeux Python Discussion :

Pygame détection souris par clic et non par frame [Python 3.X]


Sujet :

Programmation multimédia/Jeux Python

  1. #1
    Invité
    Invité(e)
    Par défaut Pygame détection souris par clic et non par frame
    Bonjour à tous,

    J'utilise pygame et je bloque sur un point.

    J'ai une fonction qui m'écrit "clic droit" à la poussée du clic droit de la souris par frame :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    def fonction ():
        mouse_pos = pygame.mouse.get_pos()
        mouse_buttons = pygame.mouse.get_pressed()
        if mouse_buttons[2]:
            print("clic droit")

    En résumé, dès que je clique une fois sur le bouton de ma souris, j'ai plein de message "clic droit" qui apparait.

    Je souhaite avoir qu'un seul clic droit par clic et non par frame.

    Bien sûr, je peux utiliser la boucle for event in pygame.event.get(): pour résoudre ce problème mais je souhaite rester sur ma fonction avec pygame.mouse.get_pressed() (du coup, avec ce critère, je ne sais pas si ce que je souhaite est faisable).


    Il y a la condition if key[pygame.K_p] and not previous_key[pygame.K_p]:, précédé d'un key = pygame.key.get_pressed(), pour n'avoir qu'un seul message par poussée de touche du clavier (touche p, dans cet exemple).

    Peut-être existe-il le même procédé pour le bouton de la souris ?


    Merci !

    Clément
    Dernière modification par Invité ; 10/01/2022 à 22h18. Motif: Ajout des balises [C] … [/C]

  2. #2
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 550
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 550
    Points : 37 206
    Points
    37 206
    Par défaut
    Salut,

    Citation Envoyé par Jesarey Voir le message
    Peut-être existe-il le même procédé pour le bouton de la souris ?
    Relisez ce que vous avez écrit:
    Citation Envoyé par Jesarey Voir le message
    Il y a la condition if key[pygame.K_p] and not previous_key[pygame.K_p]:, précédé d'un key = pygame.key.get_pressed(), pour n'avoir qu'un seul message par poussée de touche du clavier (touche p, dans cet exemple).
    Pour savoir si la touche P fait une transition entre pas appuyée et appuyée, on compare avant/après. Ce que vous pouvez tout aussi bien faire pour les boutons de la souris.

    - W

  3. #3
    Invité
    Invité(e)
    Par défaut
    Résolu, j'ai finalement trouvé mon bonheur ici : https://stackoverflow.com/questions/...-python-pygame

    Le code qui me fallait :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    prev_one = one
    one, two, three = pygame.mouse.get_pressed()
     
    if prev_one == 0 and one == 1:
        print 'mouse was clicked this frame'
    avec l'initialisation par défaut de la variable one avant ma boucle while.

    Merci de m'avoir guidé wiztricks (merci aussi au gentil modo pour avoir mis en forme mon message de départ)

    Clément

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 2
    Dernier message: 21/08/2014, 15h41
  2. Coordonnées de la souris par rapport à un élément
    Par renaud26 dans le forum Général JavaScript
    Réponses: 15
    Dernier message: 08/09/2006, 17h07
  3. position curseur souris par rapport à ma JTable
    Par jdewalqu dans le forum Composants
    Réponses: 3
    Dernier message: 24/08/2006, 18h21
  4. Position de la sourie par rapport à la page
    Par Cyrilh7 dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 05/05/2006, 20h25
  5. Detection de la mollete de la souris par le systeme.
    Par méphistopheles dans le forum Windows XP
    Réponses: 7
    Dernier message: 24/07/2005, 13h04

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo