Forum Imprimante

 Oublié Pass?
 Register
Rechercher
Voir: 899|Réponse: 1

Canevas infobulle tkinter

[Copier lien]

Post sur le : 2012-08-17 18:10:10 |Tout les posts
Bonjour,
Je voudrais creer un bouton qui incruste une croix noire dans le dernier cercle tout en permettant de remplir un infobulle localisé à l'emplacement de cette croix.
Est-ce possible à intégrer dans ce code ?
#!/musr/bin/env python
# -*- coding: utf-8 -*-
from Tkinter import *
import Tkinter as tk
from idlelib import ToolTip
def Cercle(event):
    """ Dessine un cercle de centre (x,y) et de rayon r """
    x = event.x
    y = event.y
    r = 5
    # on dessine un cercle dans la zone graphique
    item = Canevas.create_oval(x-r, y-r, x+r, y+r, outline='blue', fill='blue')
    # on ajoute l'item dans la liste
    ListeItemCercles.append(item)
    print "Création du cercle (item" , item ,")"
    # affichage de tous les items de Canevas
    print Canevas.find_all()
def Undo():
    """ Efface le dernier cercle"""
    if ListeItemCercles != []:
        item = ListeItemCercles[-1]
        # on efface le cercle
        Canevas.delete(item)
        # on supprime l'item de la liste
        del ListeItemCercles[-1]
        print "Suppression du cercle (item" , item ,")"
        # affichage de tous les items de Canevas
        print Canevas.find_all()
# Initialisation de la liste des items des cercles
ListeItemCercles = []
# Création de la fenêtre principale (main window)
Mafenetre = Tk()
Mafenetre.title('Sh')
# Image de fond
photo = PhotoImage(file="/home/python/Bureau/v.gif")
# Création d'un widget Canvas (zone graphique)
Largeur = 666
Hauteur = 666
Canevas = Canvas(Mafenetre,width = Largeur, height =Hauteur)
item = Canevas.create_image(0,0,anchor=NW, image=photo)
print "Image de fond (item",item,")"
Canevas.pack()
#clic gauche lié au cercle
Canevas.bind("[B]", Cercle)
# Création d'un widget Button
BoutonEffacer = Button(Mafenetre, text ='Effacer', command = Undo)
BoutonEffacer.pack(side = LEFT, padx = 10, pady = 10)
# Création d'un widget Button (bouton Quitter)
BoutonQuitter = Button(Mafenetre, text ='Quitter', command = Mafenetre.destroy)
BoutonQuitter.pack(side = LEFT, padx = 10, pady = 10)
Mafenetre.mainloop()
Réponse

Accessoires Signaler

Post sur le : 2012-08-17 19:36:48 |Tout les posts
Il y a bien la fonction create_arc(), mais elle me sort des histoires de wrong coordinate par rapport à item.
HEEELP
Réponse

Accessoires Signaler

Vous devez vous connecter d'abord connect | Register

Contact Us| Archive| Forum Imprimante

GMT+1, 2024-03-28 14:31

Powered by Discuz! 7.2

Release 20121101, © 2001-2024 Forum Imprimante.

Top