Partage
  • Partager sur Facebook
  • Partager sur Twitter

Modifier l'origine du canvas Tkinter

    6 avril 2017 à 9:17:55

    Bonjour à tous,

    Je cherche à modifier l'origine du repère du canvas de tkinter, je voudrais le mettre en bas à gauche au lieu d'en haut à gauche, comme un repère "classique"!

    j'ai déjà cherché sur le net, je n'ai rien trouvé, même en anglais.

    Merci d'avance!

    • Partager sur Facebook
    • Partager sur Twitter
    Anonyme
      6 avril 2017 à 9:37:32

      Cherche pas trop c'est pas possible...

      Tu adaptes en conséquence !

      -
      Edité par Anonyme 6 avril 2017 à 9:38:02

      • Partager sur Facebook
      • Partager sur Twitter
        8 avril 2017 à 0:41:30

        Faut voir si c'est utile, mais tu pourrais créer une fonction qui transforme tes coordonnées d'un repère "classique" au repère tkinter:

        from functools import partial
        
        
        def translate_coordinates(width, x, y):
            return width - x, y
        
        
        WIDTH_CANVAS, HEIGHT_CANVAS = 500, 300
        translate_coordinates = partial(translate_coordinates, WIDTH_CANVAS)
        
        print(translate_coordinates(0, 100))
        • Partager sur Facebook
        • Partager sur Twitter
        Précepte: Le mieux est l'ennemi du bien
          9 avril 2017 à 12:42:06

          Par défaut, le Canvas montre une fenêtre sur un espace infini dont l'origine en haut à gauche. Déplacer l'origine, c'est changer ce que montre cette fenêtre.

          Un Canvas par défaut:

          >>> from tkinter import Canvas
          >>> w = Canvas(width=500, height=500, bg=('grey'))
          >>> w.pack()

          On crée un rectangle centré sur l'origine (et on en voit que le quart bas/droite).

          >>> w.create_rectangle(-20, -20, 20, 20)

          Maintenant on déplace la fenêtre pour que l'origine soit au centre:

          >>> w['scrollregion'] = (-250, -250, 250, 250)

          Et le rectangle est maintenant au centre de ce qui est affiché par le Canvas.

          Par contre, pour créer un repère ou l'axe des "y" va vers le haut, il faut coder.

          -
          Edité par mps 9 avril 2017 à 12:47:29

          • Partager sur Facebook
          • Partager sur Twitter

          Modifier l'origine du canvas Tkinter

          × 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