我想在python的tkinter中将照片插入网格中,然后以行和列显示这些照片。(行和列的数量取决于您输入的内容)
我尝试使用附加列表将图片插入列表,但是我只能显示它的一列。
from tkinter import *
w = Tk()
w.geometry('1000x800')
p = 'picture.png'
img = PhotoImage(file=p)
for i in range(0, 5):
photo_list.append(Label(w, image=img))
for j in range(0, len(photo_list)):
photo_list[j].pack()
我想同时在行和列中显示这些图片。例如,如果row = 3,column = 3,则输出应为:
[图片] [图片] [图片]
[图片] [图片] [图片]
[图片] [图片] [图片]
尝试:
nr = 5 #number of rows
nc = 2 #number of columns
photo_list = []
for i in range(nr*nc):
photo_list.append(Label(w, image=img))
photo_list[-1].grid(row=i//nc, column=i%nc)
在这里,我使用了网格几何管理器,它比打包几何管理器更轻松地执行您想要的操作。图像逐行放置。
grid
接受两个称为的参数row
,column
它们是理想情况下在容器表面绘制的2D网格中小部件的索引(从0开始)。tkinter
可以自动确定网格的尺寸并管理尺寸。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句