在我的代码中,我有一个旋转框,用户可以使用它来选择他们想要的团队数量,然后在一个单独的框架中创建列以匹配他们选择的团队数量,以及何时使用旋转框更改这个值也会改变列数
frame=Frame(root)
frame.pack(anchor=CENTER)
Label(frame,text='Team selection').grid(row=0,column=0,columnspan=5)
NumTeams=StringVar()
Spinbox(frame,values=(1,2,3,4,5),textvariable=NumTeams).grid(row=2,column=0,columnspan=5)
frame2=Frame(root)
frame2.pack()
for i in range(int(NumTeams.get())):
Label(frame2,text=str(i)).grid(row=0,column=i)
frame2.update()
上面的代码试图实现这一目标,是否有人知道可以这样做的方法?
答案 0 :(得分:1)
您可以使用command
参数指定旋转框更改值时要运行的方法。我不完全确定你的意思是什么类型的列,但希望你可以使用它。
from Tkinter import *
def on_spin():
num_teams.set("New text")
root = Tk()
frame = Frame(root)
frame.pack(anchor=CENTER)
frame2 = Frame(root)
frame2.pack()
num_teams = StringVar()
label = Label(frame2, textvariable=num_teams)
label.pack()
spin = Spinbox(frame, from_=1, to=5, command=on_spin)
spin.pack()
root.mainloop()