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 :

problème chargement photo create_image


Sujet :

Tkinter Python

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 8
    Points : 5
    Points
    5
    Par défaut problème chargement photo create_image
    Bonsoir à tous oh grands programmateurs !

    Je vous demande votre aide ! Impossible de créer une image dans un canvas. Voici mon code :

    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
     
    from Tkinter import *
    from os import chdir, listdir, remove
    from lxml import etree
    from random import randrange
    import tkMessageBox
    import tkFileDialog
    import pickle
    import os.path
     
     
    def Etat_Partie(argent,nombre_joker,indice,joueur) :
        fenetre_etat_partie = Toplevel()
        Label(fenetre_etat_partie, text = "Nom de la partie :" + str(joueur) ).pack()
        Label(fenetre_etat_partie, text = "Nombre d'argent restant :" + str(argent) ).pack()
        Label(fenetre_etat_partie, text = "Nom de joker restant :" + str(nombre_joker)).pack()
        chdir("C:\Users\Maxime Helen\Desktop\Programme\Tableau indice")
        liste_indice = listdir("C:\Users\Maxime Helen\Desktop\Programme\Tableau indice")
        tefa = liste_indice[int(indice)]
        image = open(tefa) 
        photo = PhotoImage(file = image) 
        canvas = Canvas(fenetre_etat_partie, width = 660, height = 165) 
        canvas.create_image(330,82, anchor = NW, image=photo).pack()

    Et voici le message d'erreur de la console :



    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    Exception in Tkinter callback
    Traceback (most recent call last):
      File "C:\Python25\lib\lib-tk\Tkinter.py", line 1414, in __call__
        return self.func(*args)
      File "C:\Users\Maxime Helen\Desktop\Programme\Jeu_complet.py", line 349, in <lambda>
        menuFichier.add_command(label="Etat de la partie", command = lambda : Etat_Partie(argent,nombre_joker,indice,joueur))
      File "C:\Users\Maxime Helen\Desktop\Programme\Jeu_complet.py", line 285, in Etat_Partie
        photo = PhotoImage(file = image)
      File "C:\Python25\lib\lib-tk\Tkinter.py", line 3294, in __init__
        Image.__init__(self, 'photo', name, cnf, master, **kw)
      File "C:\Python25\lib\lib-tk\Tkinter.py", line 3250, in __init__
        self.tk.call(('image', 'create', imgtype, name,) + options)
    TclError: couldn't open "<open file '1tableau 1 (1).gif', mode 'r' at 0x03AA5728>": no such file or directory
    Je suis en panne sèche, pouvez vous m'aider ?

  2. #2
    Membre éclairé
    Avatar de airod
    Homme Profil pro
    Gérant Associé, DMP Santé et Directeur technique
    Inscrit en
    Août 2004
    Messages
    767
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Gérant Associé, DMP Santé et Directeur technique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2004
    Messages : 767
    Points : 891
    Points
    891
    Par défaut
    c'est normal, tu demande a PhotoImage d'ouvrir un fichier déjà ouvert.

    relis la faq :
    http://python.developpez.com/faq/?page=Widget

    a +

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 8
    Points : 5
    Points
    5
    Par défaut
    ahh merci, qu'est ce que je peux être stupide. J'ai tout modifié mon programme de la façon suivante :

    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
     
    def Etat_Partie(argent,nombre_joker,indice,joueur) :
        fenetre_etat_partie = Toplevel()
        Label(fenetre_etat_partie, text = "Nom de la partie :" + str(joueur) ).pack()
        Label(fenetre_etat_partie, text = "Nombre d'argent restant :" + str(argent) ).pack()
        Label(fenetre_etat_partie, text = "Nom de joker restant :" + str(nombre_joker)).pack()
        chdir("C:\Users\Maxime Helen\Desktop\Programme\Tableau indice")
        liste_indice = listdir("C:\Users\Maxime Helen\Desktop\Programme\Tableau indice")
        tefa = liste_indice[int(indice)]
        print tefa
        photo = PhotoImage(file = str(tefa)) 
        canvas = Canvas(fenetre_etat_partie, width = 660, height = 165)
        canvas.pack()
        canvas.create_image(330,82,image=photo)
        return
    La console ne montre plus aucun message d'erreur, mais l'image ne se lance pas. HELP

  4. #4
    Membre expérimenté Avatar de pacificator
    Profil pro
    Inscrit en
    Août 2006
    Messages
    1 074
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 1 074
    Points : 1 728
    Points
    1 728
    Par défaut
    bonjour,

    l'erreur est là:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    canvas = Canvas(fenetre_etat_partie, width = 660, height = 165).pack()
    pack ne renvoie rien, il faut donc faire:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    canvas = Canvas(fenetre_etat_partie, width = 660, height = 165)
    canvas.pack()
    ...
    "Etre conscient de la difficulté permet de l'éviter.."
    Lao-Tseu.

  5. #5
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 8
    Points : 5
    Points
    5
    Par défaut
    Oui exact, je viens de me rendre compte de mon erreur, mais comme je l'ai expliqué précedemment, la modification faite, l'image ne se lance toujours pas !

  6. #6
    Membre éclairé
    Avatar de airod
    Homme Profil pro
    Gérant Associé, DMP Santé et Directeur technique
    Inscrit en
    Août 2004
    Messages
    767
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Gérant Associé, DMP Santé et Directeur technique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2004
    Messages : 767
    Points : 891
    Points
    891
    Par défaut
    C'est normal, tu n'as pas stocké ton intance Photoimage

    Dans la faq, c'est pourtant bien marqué !!!
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    ...
    gifsdict[imgfile] = img              ## si on commente cette ligne, l'image ne s'affichera pas
    a+

  7. #7
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2010
    Messages
    8
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2010
    Messages : 8
    Points : 5
    Points
    5
    Par défaut
    Oh merci !!!!! Je n'avais pas lu cette partie du FAQ. Je vous remercie tous et toute pour l'aide apportée ! Un problème de plus résolu chez devellopez.com

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

Discussions similaires

  1. Réponses: 8
    Dernier message: 08/11/2021, 10h43
  2. Problème fonction chargement photo
    Par barok dans le forum Flash
    Réponses: 3
    Dernier message: 17/02/2007, 00h17
  3. Réponses: 5
    Dernier message: 17/10/2006, 18h27
  4. [FLASH MX] Problème chargement/preloader
    Par Gwenouille dans le forum ActionScript 1 & ActionScript 2
    Réponses: 6
    Dernier message: 26/04/2006, 13h03
  5. [FLASH 8] Probléme chargement .swf et variable
    Par segphault dans le forum Flash
    Réponses: 1
    Dernier message: 24/10/2005, 13h18

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