我遇到了在tkinter中解析此代码的问题。两个问题发生了。我无法将everb5变量传递给generate函数。
class App(Tk):
def __init__(self):
Tk.__init__(self)
self.everb5 = Entry(self).grid(row = 19, column = 2)
self.btn = Button(self, text = "Generate", command = self.generate).grid(row = 25, column = 3, columnspan = 3)
def generate(self):
self.everb5.config(text= "Hello")
我必须将变量传递给generate函数,如此...
def generate(self,everb5)
我还有大约23个变量必须在init函数的generate函数中工作。下一步?变量包含所有变量的数组?我正在制作一个疯狂的libs游戏,需要将答案从Tk()Entry()函数传递给generate(),然后我计划使用.format函数替换"空格"用于疯狂的libs,用户提供的答案。我现在有按钮工作,我只需要知道如何在函数之间传递变量。
答案 0 :(得分:1)
我想问题是self.everb5
和self.btn
都没有。原因是grid
没有返回。您应该在创建Entry或Button实例后执行网格:
class App(Tk):
def __init__(self):
Tk.__init__(self)
self.everb5 = Entry(self)
self.everb5.grid(row = 19, column = 2) #<-- here
self.btn = Button(self, text = "Generate", command = self.generate)
self.btn.grid(row = 25, column = 3, columnspan = 3) #<-- here
def generate(self):
self.everb5.config(text= "Hello")