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

Python Discussion :

Ouvrir un fichier .png grâce a TkInter


Sujet :

Python

  1. #1
    Membre averti Avatar de PoelQ
    Homme Profil pro
    Étudiant Exia.Cesi
    Inscrit en
    Janvier 2015
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant Exia.Cesi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2015
    Messages : 22
    Par défaut Ouvrir un fichier .png grâce a TkInter
    Bonsoir tout le monde,
    Cela fais un petit moment que je fais des recherches pour pouvoir ouvrir un fichier .png en utilisant la bibliothèque TkInter. J'ai trouvé plusieurs exemples sur différents sites mais aucun ne fonctionne sur mon ordinateur.
    J'ai essayé via TkInter tout seul et en mélangeant TkInter et PIL mais dans les deux cas j'ai une erreur.
    Voici mon code pour afficher l'image :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    from tkinter import *
     
    fen = Tk()
     
    Img = PhotoImage(file="Carre.png")
    Img_label = Label(image=Img)
    Img_label.grid()
    Img_label.image = Img
     
    fen.mainloop()
    Avec ce code Python me renvoie l'erreur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    _tkinter.TclError: couldn't recognize data in image file "Carre.png"
    J'utilise la version 3.2 de Python.
    Merci d'avance pour votre aide!

  2. #2
    Membre Expert
    Homme Profil pro
    Enseignant
    Inscrit en
    Juin 2013
    Messages
    1 617
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Juin 2013
    Messages : 1 617
    Par défaut
    J'ai pas mal manipulé PIL, un peu avec tkinter, et il me semble que tkinter ne gère que les images gif.

  3. #3
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 670
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 670
    Par défaut
    Salut,

    Il faut utiliser PIL avec tkinter comme çà:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    >>> import tkinter as tk
    >>> from PIL import Image, ImageTk
    >>> image = Image.open("Carre.png")
    >>> photo = ImageTk.PhotoImage(image)
    >>> tk.Label(image=photo).pack()
    >>>
    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  4. #4
    Membre averti Avatar de PoelQ
    Homme Profil pro
    Étudiant Exia.Cesi
    Inscrit en
    Janvier 2015
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant Exia.Cesi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2015
    Messages : 22
    Par défaut
    Salut wiztricks, merci pour ta réponse mais quand j’exécute ton bout de code j'ai une erreur : RuntimeError: Too early to create image. Est-ce que tu peux m'aider ?

  5. #5
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 670
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 670
    Par défaut
    Citation Envoyé par PoelQ Voir le message
    Salut wiztricks, merci pour ta réponse mais quand j’exécute ton bout de code j'ai une erreur : RuntimeError: Too early to create image. Est-ce que tu peux m'aider ?
    le "too early" signifie qu'il faut initialiser Tk avant via un appel a tk.Tk()

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  6. #6
    Membre averti Avatar de PoelQ
    Homme Profil pro
    Étudiant Exia.Cesi
    Inscrit en
    Janvier 2015
    Messages
    22
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 27
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Étudiant Exia.Cesi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2015
    Messages : 22
    Par défaut
    Problème résolu merci beaucoup !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. ouvrir un fichier.db
    Par MisterPython dans le forum Tkinter
    Réponses: 5
    Dernier message: 27/01/2015, 09h53
  2. Ouvrir un fichier solidworks avec edrawing grâce à VB
    Par 2855cedric dans le forum Visual Studio
    Réponses: 0
    Dernier message: 04/09/2012, 15h07
  3. Ouvrir les fichiers png avec un autre programme
    Par fabou3377 dans le forum NetBeans
    Réponses: 1
    Dernier message: 18/01/2010, 14h04
  4. [VBA-E] ouvrir un fichier .xls sans executer les macro
    Par lae_t2 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 15/01/2003, 17h07
  5. [Kylix] Ouvrir un fichier en étant dans KYLIX
    Par Jackepsi dans le forum EDI
    Réponses: 2
    Dernier message: 05/11/2002, 15h59

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