Inserción de una imagen con tkinter

Resuelto
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

4 respuestas

Phil_1857 Mensajes publicados 1883 Fecha de registro   Estado Miembro Última intervención   169
 
Hola Neirdah, Entonces, ¿tienes éxito? Yo, hice esto y funciona:
 # -*- 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 Mensajes publicados 1883 Fecha de registro   Estado Miembro Última intervención   169
 
Hola Neirdah,

¿Por qué la error pyimage5 no existe cuando

pasas como argumento logo2.png ?????????

Por otro lado, ¿puedes mostrar tu código completo?

He probado tu código con una imagen mía, funciona muy bien ...
0
Neirdah
 
Porque al poner simplemente 'logo2.png' el programa no encuentra el archivo.
Por ahora es mi programa completo pero busco cómo conectarlo a otro para tener la imagen de fondo (lo que por ahora no consigo hacer ya que soy principiante en la programación con tkinter).
0
Phil_1857 Mensajes publicados 1883 Fecha de registro   Estado Miembro Última intervención   169
 
No te digo que pongas simplemente logo2.png, me sorprende solo que el mensaje de error sea pyimage5 no existe. Yo copié/pegué tu código y reemplacé tu ruta y tu nombre de imagen por mi ruta y una imagen mía y eso funciona perfectamente.
0
Neirdah
 
Funciona ahora. Me gustaría saber cómo hacer para estirar la imagen para que ocupe toda mi frame. ¿Cómo hacer para que se ajuste a su tamaño?
0