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 :

mouvement infini de la souris [Python 2.X]


Sujet :

Programmation multimédia/Jeux Python

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Technicien réseau
    Inscrit en
    Septembre 2017
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Somme (Picardie)

    Informations professionnelles :
    Activité : Technicien réseau

    Informations forums :
    Inscription : Septembre 2017
    Messages : 11
    Points : 6
    Points
    6
    Par défaut mouvement infini de la souris
    bonjour, je cherche depuis un moment à récupérer le sens et la vitesse de déplacement de la souris.
    seulement avec Pygame (ou avec TKINTER) je ne récupéré que les coordonnées X et Y du curseur dans la fenêtre active.
    comment repositionner le curseur sur le bord opposé sur un seul mouvement de souris OU comment récupérer uniquement le mouvement et la vitesse de déplacement de la souris en dehors de l’écran.

    voici la partie de code que j'utilise pour le moment:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
     
    continuer = 1
    while continuer:
    	for event in pygame.event.get():	#Attente des événements
    		if event.type == MOUSEBUTTONDOWN:
    			if event.button == 1:
    				continuer = 0
    		if event.type == MOUSEMOTION:
    				#On change les coordonnées du perso
    			print(event.rel[0],event.rel[1])
    			perso_x += event.rel[0]
    			perso_y += event.rel[1]
     
     
    	#Re-collage
    	fenetre.blit(fond, (0,0))	
    	fenetre.blit(perso, (perso_x, perso_y))
    	#Rafraichissement
    	pygame.display.flip()
    dans Pygame la fonction "event.rel[]" me renvois bien les déplacements de la souris mais si le curseur atteint le bord de l’écran je n'ai plus de donnée.
    l'idéal serai que je continu à avoir ces données bien au delà de l’écran, ou alors que je puisse repositionner le curseur de la souris avec une fonction.

    je n'ai pas trouver de réponse à ce problème sur les différents forum, j’espère que vous aurez des pistes ou voir une solution à me proposer.

    Merci d'avance.

  2. #2
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 283
    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 283
    Points : 36 770
    Points
    36 770
    Par défaut
    Salut,

    Citation Envoyé par sn290 Voir le message
    ou alors que je puisse repositionner le curseur de la souris avec une fonction.
    Et avec pygame.mouse.set_pos(x, y)? Avec tkinter, çà pourrait être un event_generate('<Motion>',....).

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Technicien réseau
    Inscrit en
    Septembre 2017
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Somme (Picardie)

    Informations professionnelles :
    Activité : Technicien réseau

    Informations forums :
    Inscription : Septembre 2017
    Messages : 11
    Points : 6
    Points
    6
    Par défaut
    OK je vais creuser de ce coté (je ne connais pas très bien pygame et ça parait si simple que je n'y ai pas pensé )
    je ferait un retour dans quelque jours!

  4. #4
    Futur Membre du Club
    Homme Profil pro
    Technicien réseau
    Inscrit en
    Septembre 2017
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Somme (Picardie)

    Informations professionnelles :
    Activité : Technicien réseau

    Informations forums :
    Inscription : Septembre 2017
    Messages : 11
    Points : 6
    Points
    6
    Par défaut merci
    Bonjour,
    alors merci pour cette petite aide, et cela m'a aidé a réaliser ce que je voulais faire.
    voici le bout de code que j'en ai tiré :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
     
    continuer = 1
    while continuer == 1:
    	for event in pygame.event.get():	#Attente des événements
    		if event.type == MOUSEBUTTONDOWN:
    			if event.button == 1:
    				continuer = 0
    		if event.type == MOUSEMOTION:
    				#On change les coordonnées du perso
    			print(event.pos[0],event.pos[1])
    			print(event.rel[0],event.rel[1])
    			perso_x += event.rel[0]
    			perso_y += event.rel[1]
    			if event.pos[0] > W-5:
    				pygame.mouse.set_pos(5, perso_y)
    			if event.pos[0] < 5:
    				pygame.mouse.set_pos(W-5, perso_y)
    			if event.pos[1] > H-5:
    				pygame.mouse.set_pos(perso_x, 5)
    			if event.pos[1] < 5:
    				pygame.mouse.set_pos(perso_x, H-5)
    	fenetre.fill([0, 0, 0])
    	#Re-collage
    	#fenetre.blit(fond, (0,0))	
    	fenetre.blit(perso, (perso_x, perso_y))
    	#pygame.mouse.set_pos(5, 5)
    	#Rafraichissement
    	pygame.display.flip()
    pygame.quit()
    au final c'est tout bête, mais ne connaissant pas encore beaucoup pygame je crois que j'ai ganier 10 jours de recherche ;-p

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

Discussions similaires

  1. Effet de mouvement sympathique réactif à la souris
    Par Dsphinx dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 10/07/2013, 09h33
  2. [LWJGL] mouvement saccadé avec la souris
    Par Alays dans le forum OpenGL
    Réponses: 4
    Dernier message: 17/12/2012, 18h47
  3. Mouvement image picturebox à la souris
    Par Lnmex dans le forum Windows Forms
    Réponses: 2
    Dernier message: 14/03/2009, 12h30
  4. Mouvement de la souris au-dessus d'un contrôle
    Par Choupinou dans le forum MFC
    Réponses: 8
    Dernier message: 16/07/2004, 17h28
  5. [JButton] Mouvements souris + MousePressed
    Par Devil Redneck dans le forum Composants
    Réponses: 8
    Dernier message: 17/05/2004, 17h49

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