код ткинтер не отображает картинку

Мне нужно, чтобы каждый раз, как окно ткинтер само перемещается по моему экрану, оно меняло свою картинку. Но этот код почему-то перемещает белый квадрат по моему монитору, изменяя его размер. То есть он не может применить картинку.

import os
import cv2

names = ['Lol', 'AD', 'lmao', 'Virus']
window = Tk()
screen_width = window.winfo_screenwidth()
screen_height = window.winfo_screenheight()
window.config(bg='black')

window.title(random.choice(names))
window.overrideredirect(True)
window.attributes("-topmost",True)

x = random.randint(0, screen_width - 400)
y = random.randint(0, screen_height - 400)

def move_me(ess):
    x, y = str(random.randrange(0, screen_width - 200)), str(random.randrange(screen_height - 200))
    x, y = str(100), str(100)
    png = 'popopus\\'+random.choice(os.listdir('popopus'))



    # loading the image 
    imge = cv2.imread(png) 
      
    # fetching the dimensions 
    wid = imge.shape[1] 
    hgt = imge.shape[0]


    canvas = Canvas(window, height=str(hgt), width=str(wid))
    img = PhotoImage(file = png) 
    image = canvas.create_image(0, 0, anchor='nw',image=img)
    canvas.grid(row=2,column=1)
    canvas.place(x=-1, y=-1)
    loc = str(wid) + "x" + str(hgt)+"+" + x + '+' + y
    window.geometry(loc)
    window.after(3000,lambda: move_me(ess=ess))  # <-- auto call to move_me again every 1/2 second


png = 'popopus\\'+random.choice(os.listdir('popopus'))



# loading the image 
imge = cv2.imread(png) 
  
# fetching the dimensions 
wid = imge.shape[1] 
hgt = imge.shape[0]

scren = str(wid) + "x" + str(hgt)
window.geometry(f'{scren}+{x}+{y}')

canvas = Canvas(window, height=str(hgt), width=str(wid))
img = PhotoImage(file = png) 
image = canvas.create_image(0, 0, anchor='nw',image=img)
canvas.grid(row=2,column=1)
canvas.place(x=-1, y=-1)


move_me(ess = png)
window.mainloop()

Ответы (0 шт):