我有这个python2.7.9代码。错误在于chooseKid()
函数。StringVarcurrent
和标签chosenKid
不更新。我已经验证了chooseKid()
确实运行,并且choice
变量已设置。但是chosenKid
from Tkinter import Tk,Button,StringVar,Entry,Label
import random
root= Tk()
current=StringVar()
kids=[]
addKidName=Entry(root)
def addkid():
kids.append(addKidName.get())
print kids
addKid=Button(root, text="Add a student", command=addkid)
def choosekid():
chosen=random.choice(kids)
current.set(chosen)
chooseKid=Button(root,text="Pick random student", command=choosekid)
chosenKid=Label(root,text=current)
addKid.grid(row=0,column=1)
addKidName.grid(row=0,column=0)
chooseKid.grid(row=1,column=1)
chosenKid.grid(row=1,column=0)
root.mainloop()
您需要设置
textvariable
,而不是text
。这将允许Label
内容与StringVar
中当前的内容相匹配。在相关问题 更多 >
编程相关推荐