Python 未将输入字符串添加到列表框
有人能帮我调试一下吗?列表框没有更新,我也不确定输入文本(Python 未将输入字符串添加到列表框,python,listbox,tkinter,Python,Listbox,Tkinter,有人能帮我调试一下吗?列表框没有更新,我也不确定输入文本(ment)是否正在传输到该方法 def NewTask(): ment = StringVar() top = Toplevel() top.title("Add New Task") top.minsize(300,300) top.maxsize(300,300) label_newtask = Label(top, text = "Entry New Task:", font = (
ment
)是否正在传输到该方法
def NewTask():
ment = StringVar()
top = Toplevel()
top.title("Add New Task")
top.minsize(300,300)
top.maxsize(300,300)
label_newtask = Label(top, text = "Entry New Task:", font = ("Purisa",20))
label_newtask.pack()
button_newtask = Button(top, text="Enter", command= NewTaskCount)
button_newtask.pack()
entry_newtask = Entry(top, textvariable=ment)
entry_newtask.pack()
def NewTaskCount():
ment = StringVar()
mtext = ment.get()
listbox.insert(END, mtext)
return
您的问题是,您的stringvar
ment
是一个仅在NewTask
范围内可见的局部变量。在NewTaskCount中,您正在创建一个新的StringVar(最初为空),并立即获取该新变量的值。您需要将其设置为全局变量,或者使用面向对象的方法,以便使用实例变量。我不确定listbox是否可以“随时”更新@AlokChaudhary:是的,当然可以。下拉列表也可以更新吗?因为我试过一次&它们没有……我该如何把它变成一个全局变量?@user1840752将ment=StringVar()
放在函数之前,并将这两个函数中的ment=StringVar()
替换为global-ment
。