Reputation: 23
I'm learning Tkinter and I want to resize an image, this is my code:
from tkinter import *
from PIL import ImageTk, Image
root = Tk()
root.title("Iconos e Imagenes")
root.geometry("500x500+60+70")
root.iconbitmap("logo.ico")
img = Image.open("image.jpg")
img = img.resize((200,248), Image.ANTIALIAS)
new_img = ImageTk.PhotoImage(img)
my_Label = Label(image= img)
my_Label.pack()
button_close = Button(root, text="Close Program", command=root.quit)
button_close.pack()
root.mainloop()
And i'm getting this error:
Traceback (most recent call last):
File "C:/Users/dvill/PycharmProjects/Programacion/Mi Trabajo/iconos_e_imagenes2.py", line 12, in <module>
my_Label = Label(image= img)
File "C:\Users\dvill\AppData\Local\Programs\Python\Python38-32\lib\tkinter\__init__.py", line 3143, in __init__
Widget.__init__(self, master, 'label', cnf, kw)
File "C:\Users\dvill\AppData\Local\Programs\Python\Python38-32\lib\tkinter\__init__.py", line 2567, in __init__
self.tk.call(
_tkinter.TclError: image "<PIL.Image.Image image mode=RGB size=200x248 at 0x386F1C0>" doesn't exist
Any help would be appreciated!
Upvotes: 2
Views: 316
Reputation: 114
you had img
instead of new_img
by your lable
try this
from tkinter import *
from PIL import ImageTk, Image
root = Tk()
root.title("Iconos e Imagenes")
root.geometry("500x500+60+70")
root.iconbitmap("logo.ico")
img = Image.open("image.jpg")
resize_img = img.resize((200, 248), Image.ANTIALIAS)
new_img = ImageTk.PhotoImage(resize_img )
my_Label = Label(root, image=new_img)
my_Label.pack()
button_close = Button(root, text="Close Program", command=root.quit)
button_close.pack()
root.mainloop()
Upvotes: 2