Изображение отображается пустым при использовании Tkinter в python

#python #image #tkinter

#python #изображение #tkinter

Вопрос:

Когда я пытаюсь добавить изображение с измененным размером в Tkinter, оно просто отображается как пустая метка. Как мне это исправить? Он работал ранее в моем коде, используя точно такой же «рецепт».

Работает:

 my_pic = Image.open('appicon.png')
resized = my_pic.resize((60, 60), Image.ANTIALIAS)
new_pic = ImageTk.PhotoImage(resized)
login1 = Label(root, image=new_pic, bg=bgfarge)
login1.pack(pady=15)
 

Не работает:

 from PIL import ImageTk, Image

my_image = Image.open('application.png')
resizer = my_image.resize((60, 60), Image.ANTIALIAS)
new_image = ImageTk.PhotoImage(resizer)
rinp6 = Label(root, image=new_image, bg=bgfarge)
rinp6.pack(pady=30)
 

Комментарии:

1. Итак, единственное, что отличается между рабочим кодом и нерабочим кодом, — pady это имя изображения? Как мы можем дублировать вашу проблему, не имея доступа ни к одному из изображений? Мы можем только предположить, что я могу себе представить…

2. Добавьте эту строку: rinp6.photo = new_image

3. Это решило проблему @Novel!

4. Является ли этот код функцией? Ваш пример кода не показывает его в функции, но поведение такое же, как если бы вы сделали это в функции.