Insertion d'une image avec tkinter

Résolu
Neirdah -  
 Neirdah -
Bonjour,
J'essaie de programmer l'insertion d'une image grâce à tkinter mais il me retourne à chaque fois l'erreur 'TclError: image "pyimage5" doesn't exist'. J'aimerais savoir ce qui ne va pas dans mon code.

class Interface(Tk):
    def __init__(self, path_image):
        super(Interface, self).__init__()

        self.image = PhotoImage(file=path_image)
        self.w, self.h = self.image.width(), self.image.height()

        self.canvas = Canvas(self, width=self.w, height=self.h)
        self.canvas.pack()
        self.canvas.create_image((self.w//2, self.h//2), image=self.image)

        self.mainloop()



Interface(r"C:\Users\lbhad\OneDrive\Documents\BCPST\2\Informatique\logo2.png")



Configuration: Windows / Edge 87.0.664.75
A voir également:

4 réponses

Phil_1857 Messages postés 1872 Date d'inscription   Statut Membre Dernière intervention   168
 
Hello Neirdah,

Alors, as-tu de la réussite ?
Moi, j'ai fait ceci et ça marche:

# -*- coding:Latin-1 -*-

from tkinter import *

class Interface(Tk):
    def __init__(self, path_image):
        super(Interface, self).__init__()

        self.image = PhotoImage(file=path_image)
        self.w, self.h = self.image.width()+10, self.image.height()+10

        self.canvas = Canvas(self, width=self.w, height=self.h)
        self.canvas.pack()
        self.canvas.create_image(self.w//2, self.h//2, image=self.image)

        self.mainloop()

Interface(r"C:\Phil\Dev\Python\tests\ccm\images\Fresque_01.png")
1
Phil_1857 Messages postés 1872 Date d'inscription   Statut Membre Dernière intervention   168
 
Bonjour Neirdah,

Pourquoi l'erreur est-elle pyimage5 n'existe pas alors

que tu passes en argument logo2.png ?????????

D'autre part, peux-tu afficher ton code complet ?

J'ai testé ton code avec une image à moi, ca marche très bien ...
0
Neirdah
 
Car en mettant simplement 'logo2.png' le programme ne me trouve pas le fichier.
Pour l'instant c'est mon programme complet mais je cherche comment le relié à un autre pour avoir l'image en fond (ce que pour l'instant je n'arrive pas à faire étant donné que je débute dans la programmation avec tkinter).
0
Phil_1857 Messages postés 1872 Date d'inscription   Statut Membre Dernière intervention   168
 
Je ne te dis pas de mettre simplement logo2.png, je

m'étonnes juste que le message d'erreur soit pyimage5

n'existe pas

Moi, j'ai copié/collé ton code et j'ai remplacé ton chemin et ton nom

d'image par mon chemin et une image à moi et ça marche parfaitement
0
Neirdah
 
Cela marche à présent. J'aimerai savoir comment faire pour étendre l'image à l'ensemble de ma frame. Comment faire pour qu'elle s'adapte à sa taille ?
0