Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/usr/bin/python
- # -*- coding: latin-1 -*-
- from Tkinter import *
- # Fonction qui détecte le clic de la souris, qui renvoie la valeur des coordonnées x et y
- # et qui fait apparaître un cercle bleu à l'emplacement du clic.
- def pointeur(event) :
- "Fonction qui détecte le clic de la souris et fait apparaître un cercle bleu à l'emplacement du clic."
- cadre.delete(ALL) # Effacement préalable de tout dessin (en l'occurrence un cercle)
- x = event.x # Méthode qui affecte la valeur de la coordonnée x à la variable x.
- y = event.y # Méthode qui affecte la valeur de la coordonnée y à la variable y.
- r = 15 # valeur du rayon du cercle
- # Méthode "configure" du widget "detection". Elle permet de modifier son attribut "text" :
- detection.configure(text="clic détecté en X = " + str(event.x) + ", en Y = " + str(event.y))
- # str() modifie le type de la variable en une chaîne de caractères, pour pouvoir l'afficher.
- # Méthode associée au widget "cadre" et qui dessine un cercle bleu :
- cadre.create_oval(x-r, y-r, x+r, y+r, fill = 'navy')
- #----Programme principal----
- fenetre = Tk()
- # Création d'un widget de la classe Canvas nécessaire pour dessiner un cercle.
- cadre = Canvas(fenetre, width=200, height=200, bg="light yellow")
- # Le widget est lié à l'événement "<Button-1>" qui correspond au clic gauche de la souris et qui déclenche la fonction "pointeur" :
- cadre.bind("<Button-1>", pointeur)
- cadre.pack()
- detection = Label(fenetre) # Widget de la classe Label.
- detection.pack()
- fenetre.mainloop() # Méthode qui lance le gestionnaire d'événements.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement