尝试在类中使用多个函数时出现Python错误。 Tkinter的

时间:2014-12-09 01:22:51

标签: python function variables tkinter

我遇到了在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,用户提供的答案。我现在有按钮工作,我只需要知道如何在函数之间传递变量。

1 个答案:

答案 0 :(得分:1)

我想问题是self.everb5self.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")