Partage
  • Partager sur Facebook
  • Partager sur Twitter

[python] coordonnés

sourie

    1 juillet 2006 à 11:15:00

    bonjour,
    j'aimerais savoir comment recuperer les coordonnés de ma sourie dans une fenetre Tkinter.

    merci d'avance.
    • Partager sur Facebook
    • Partager sur Twitter
    Anonyme
      1 juillet 2006 à 11:16:50

      Si tu lis le cours de Swinnen, c'est dedans.
      • Partager sur Facebook
      • Partager sur Twitter
        1 juillet 2006 à 16:27:08

        oui, on trouve les coordonnées apres un evenement. Ici, il s'agit de recuperer les coordonnées de la souris dans une fenetre sans cliquer ou autre. La fonction event n'est pas utilisable.
        • Partager sur Facebook
        • Partager sur Twitter
          1 juillet 2006 à 19:22:07

          tu peux par exemple (si tu veux le faire récuperer les cordonnées 20 fois par secondes)

          fenetre.after(fonction_qui_recupere_les_coordonnees, int(1000/20))

          et dans la fonction_qui_recupere_les_donnees du refais le code précedent et après tu fais ce que tu veux des données comme ça 20 fois par secondes (ou plus) tu recupere les coordonnées
          • Partager sur Facebook
          • Partager sur Twitter
            1 juillet 2006 à 19:24:02

            Tu peut suivre la position de la souris avec des évènements souris: <Enter> quand ta souris rentre dans la fenêtre, et <Motion> quand elle y bouge.

            Avec cà la position de la souris est automatiquement enregistrée dans souris_x et souris_y:


            from Tkinter import *

            root=Tk()

            def callback(event):
              souris_x,souris_y=str(event.x),str(event.y)
              print 'Position de la souris: '+souris_x+' '+souris_y

            frame = Frame(root, width=100, height=100)
            frame.bind("<Enter>", callback)
            frame.bind("<Motion>", callback)
            frame.pack()

            root.mainloop()


            Après tu aura besoin de trafiquer le code si tu veux utiliser les variables ailleurs que dans la fonction, et selon ce que tu fais avec ta position de souris tu aura peut être aussi besoin d'utiliser un évènement <Leave> quand la souris quitte la fenêtre, par exemple dans le cas d'une application graphique genre paint où tu affiche en continu la position de la souris dans la barre de status si tu veux effacer cette position quand la souris sort de la fenêtre.
            • Partager sur Facebook
            • Partager sur Twitter
              2 juillet 2006 à 15:09:14

              ok, génial ! merci beaucoup à vous deux !
              • Partager sur Facebook
              • Partager sur Twitter
                2 juillet 2006 à 17:47:12

                ah ! je ne savais pas comment faire non plus. Je rajoute une question : comment ne pas afficher l'image de la souris sur le canvas, rendre invisible le pointeur ?

                merci d'avance
                • Partager sur Facebook
                • Partager sur Twitter
                  2 juillet 2006 à 18:41:56

                  Afficher un carré (blanc, par exemple) par dessus la souris ?
                  • Partager sur Facebook
                  • Partager sur Twitter
                  Anonyme
                    2 juillet 2006 à 20:11:26

                    Vous lisez la doc avant de venir ici ?
                    • Partager sur Facebook
                    • Partager sur Twitter
                      4 juillet 2006 à 22:40:54

                      Comment il casse le Bigloo :D

                      La réponse sous windows au cas où cà intéresse quelqu'un c'est qu'il faut mettre le fichier d'un curseur invisible comme celui ci à côté de votre fichier py, puis dans la création du canvas vous signalez le chemin du curseur personnalisé par @ puis le chemin:


                      import Tkinter

                      app=Tkinter.Tk()

                      canvas=Tkinter.Canvas(app,width=500,height=500,background='white',cursor='@blank_cursor.cur')
                      canvas.pack()

                      app.mainloop()


                      Sous unix je crois que c'est pareil mais avec des fichiers xbm au lieu de fichiers cur ou ani windows.
                      • Partager sur Facebook
                      • Partager sur Twitter

                      [python] coordonnés

                      × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                      × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                      • Editeur
                      • Markdown