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

Tkinter Python Discussion :

Comparer le contenu de deux widgets


Sujet :

Tkinter Python

  1. #1
    Candidat au Club
    Inscrit en
    Novembre 2010
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Novembre 2010
    Messages : 3
    Points : 2
    Points
    2
    Par défaut Comparer le contenu de deux widgets
    Bonjour,

    J'aimerais comparer deux images que j'ai mis dans seux Label différents seulement celà fait plusieurs jours que je cherche et je ne trouve aucune réponse, je ne sais même pas si c'est possible.
    Voilà pour le moment ce que j'ai:

    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
    from Tkinter import *
    root = {0: Tk()}
     
    r2d2=PhotoImage(file="r2d2.gif")
    yoda=PhotoImage(file="yoda.gif")
     
    root[1]=Label(root[0],relief=SOLID, padx=20, pady=20, image=yoda)
    root[1].pack()
     
    root[2]=Label(root[0],relief=SOLID, padx=20, pady=20, image=yoda)
    root[2].pack()
     
     
     
    if root[1]==root[2]:
        print True
    else:
        print False
     
     
     
    root[0].title('Sliding-rows')
    root[0].protocol('WM_DELETE_WINDOW', root[0].quit)
    root[0].mainloop()
    root[0].destroy()
    Je souhaite uniquement comparer les deux images.

    Merci de vos réponses

  2. #2
    Membre actif
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    222
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 222
    Points : 290
    Points
    290
    Par défaut
    Bonjour,

    Tu veux savoir si les labels contiennent les même PhotoImage, ou tu veux comparer les images pixel par pixel.

    Pour le 1er c'est possible:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    if root[1].cget("image")==root[2].cget("image"):
        print True
    else:
        print False
    Pour le 2nd c'est plus compliqué, mais certainement possible en utilisant d'autres modules.

  3. #3
    Expert éminent

    Homme Profil pro
    Inscrit en
    Octobre 2008
    Messages
    4 302
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2008
    Messages : 4 302
    Points : 6 782
    Points
    6 782
    Par défaut
    Avec le module PIL tu pourras pratiquement tout te permettre avec les images.

    Ce module a, de surcroît, l'avantage de s'apprendre très facilement.

    Pour ta comparaison d'image, après avoir comparé leur taille, tu pourra aussi comparer leur histogramme.

    Ce test est infaillible et, j'en ai moi-même été étonné, très rapide même avec de gros fichiers.

Discussions similaires

  1. comparer le contenu de deux cellules
    Par maroinoide dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 08/03/2009, 12h53
  2. Comparer le contenu de deux cellules
    Par _Nimy_ dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 13/05/2008, 16h18
  3. Comparer le contenu de deux requêtes
    Par Floch dans le forum Access
    Réponses: 2
    Dernier message: 04/05/2006, 11h43
  4. comparer le contenu de deux tables?
    Par sessime dans le forum Requêtes
    Réponses: 5
    Dernier message: 07/03/2006, 14h05
  5. Comparer le contenu de deux vecteurs
    Par misou83 dans le forum Collection et Stream
    Réponses: 11
    Dernier message: 20/07/2005, 17h17

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