Почему tkinter показывает одно и то же изображение в разных виджетах, даже если изображения загружаются отдельно? - PullRequest
0 голосов
/ 29 мая 2020

Bottom image should be profile.jpg but it's repeated by bg.jpg which is the first one.

Первое изображение для фона, которое отображается 2 раза, а второе - изображение профиля, которое не отображается, Обе фотографии присутствуют в одном root каталог и иметь тот же формат (jpg).

from tkinter import *
from PIL import ImageTk, Image
import json

with open('config.json') as config_data:
    data = json.load(config_data)['variables']


root = Tk()
root.title(data['title'])
##TODO: for full screen
# root.wm_attributes('-fullscreen', 'true')

# MAIN BG SECTION:
image = Image.open("bg.jpg")
image = image.resize((1620, 880), Image.ANTIALIAS)
bg_image = ImageTk.PhotoImage(image)

# PHOTO FRAME SECTION:
canvas = Canvas(width=data['canvas_width'], heigh=data['canvas_height'], bg="gray11")
canvas.pack()
canvas.create_image(0, 0, image=bg_image, anchor=NW)

frame_image = Image.open("profile.jpg")
frame_image = image.resize((400, 400), Image.ANTIALIAS)
f_image = ImageTk.PhotoImage(frame_image)
photo_Label = Label(root, image=f_image).pack()


root.mainloop()

1 Ответ

1 голос
/ 29 мая 2020

Как указано в @ acw1668, frame_image = image.resize(...) должно быть frame_image = frame_image.resize(...)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...