我有一个非常小的 10 x 10 像素 jpg 图像,我想使用 tkinter 在整个背景中重复它。
from tkinter import *
from PIL import Image, ImageTk
root = Tk()
img = Image.open(resource_path("FILE LOCATION//filename.jpg"))
for i in range(0,1000):
image1 = ImageTk.PhotoImage(i)
label1 = Label(root, image=image1)
label1.pack()
root.mainloop()
这段代码是迭代的,但不是按顺序的。我是 tkinter GUI 开发的菜鸟。请帮忙。
最佳答案
您需要保留对图像的引用,否则它会被垃圾收集。
创建多行 Canvas ,并在每行中放入您想要的图片数量。
from tkinter import *
from PIL import Image
from PIL import ImageTk
root = Tk()
img = Image.open(resource_path("FILE LOCATION//filename.jpg"))
image1 = ImageTk.PhotoImage(img)
reference_to_image = Canvas(root)
reference_to_image.image = image1
for count in range(10):
canvas = Canvas(root)
canvas.pack(side = TOP)
for counter in range(10):
label1 = Label(canvas, image=image1,borderwidth = 0, highlightthickness=0)
label1.pack(side=LEFT)
root.mainloop()
关于python - 如何使用小的单个图像并在整个窗口中重复它以使用 tkinter GUI 使其成为背景图像?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64958250/