Первоначально я спрашивал о добавлении изображения в рамку tkinter. Код, с которым я закончил, был следующим:
img_load = Image.open('D:\Downloads\Pictures\Python\PNG\\2C.png')
img_load = img_load.resize((140,200), Image.ANTIALIAS)
imgRender = ImageTk.PhotoImage(img_load)
img = tk.Label(frame1, image=imgRender)
img.image = imgRender
Кажется, что пока все работает нормально, но потом возник случай, когда я захотел поменять это изображение на другое. Я мог бы просто загрузить еще один на его место, но я подозреваю, что это может вызвать утечку памяти.
Я столкнулся с методом close объекта PIL Image и попытался его использовать. Я привязал его к кнопке, а затем щелкнул по нему, и ничего не произошло - изображение осталось на экране в кадре, и поэтому оно находится в памяти. Просто чтобы понять, что я делаю, этот код выглядит следующим образом:
img_load.close()
Так что может показаться, что я поступаю неправильно. Я хочу, чтобы изображение было добавлено во фрейм, поэтому код, который я использовал для этого, работает хорошо. Я просто не знаю, как выгрузить это изображение в этой ситуации.
Так как мне это сделать?
Редактировать: у меня есть два объекта, о которых мне нужно беспокоиться. Изображение и фотоизображение. Оба являются созданными объектами. Я могу использовать «close» для первого, но, похоже, для второго такого метода не существует.