我的程序中有一组使用 Tkinter 的方法,它们的行为不像我想象的那样。我希望能够在窗口中按下按钮并显示更多文本字段,并能够在文本字段中返回结果列表。这是我所拥有的:
def expandChoice(self):
root = Tk()
choices = []
plusButton = Button (root, text='+', command=self.addChoice(root, choices))
plusButton.pack()
quitButton = Button (root, text='Ok', command=root.destroy )
quitButton.pack()
root.mainloop()
return choices
def addChoice(self, parent, variables):
variables.append(StringVar())
text = Entry(parent, textvariable=variables[len(variables)-1])
text.pack()
发生的情况是,当窗口加载时(在按钮上方)出现一个文本字段,而加号按钮什么也不做。我究竟做错了什么?似乎 addChoice 方法在调用第一个按钮的构造函数时自动调用,然后就不起作用了。