其他类别的呼叫模块

时间:2012-04-30 03:25:27

标签: python class module

所以我有一个close()方法,当用户单击关闭按钮时调用该方法。 close方法如下:

def close(self):
    ThreadedClient.endApplication()

    root.destroy()

close()方法在GUI()类中。 close方法需要调用ThreadedClient类中的endApplication()方法。但相反,它给了我这个错误:

TypeError: unbound method endApplication() must be called with ThreadedClient instance as first argument (got nothing instead)

这可能是一个简单的解决方案,但我只是不知道如何解决它。任何帮助表示赞赏!

2 个答案:

答案 0 :(得分:0)

您需要提出的问题是 ThreadedClient需要.endApplication()调用它。

一旦你有了它的引用(假设你在self中存储了一个引用)

def close(self):
    self.threaded_client.endApplication()
    # ...

答案 1 :(得分:0)

显然,endApplication()是一种实例方法,但ThreadedClient。您需要为其提供您想要结束的ThreadedClient的实际实例。

例如,如果您在其他地方创建了带有...的线程客户端

foo = ThreadedClient()

然后你需要打电话......

foo.endApplication()