调用另一帧中的函数(WxPython)



在我的wxpython应用程序中,我有一个父框架和一个子框架。当我点击子框架内的按钮时,我希望它向父框架发送一些数据(列表、字符串等),关闭自己,显示父框架,最后调用父框架中的函数。我该怎么做?(特别是函数调用)

提前谢谢。

已解决

您应该让按钮点击生成一个包含数据的事件。然后向父帧添加一个事件处理程序,该事件处理程序从事件中提取数据并调用函数。wxPythonWiki有一个介绍事件的教程。wx文档还有一个事件处理概述。

您也可以使用pubsub来实现这一点:http://www.blog.pythonlibrary.org/2010/06/27/wxpython-and-pubsub-a-simple-tutorial/

或者,您可以只使用对话框的子类,并以模式显示它。或者您可以使用PostEvent传递事件。这里有一个例子:http://www.blog.pythonlibrary.org/2010/05/22/wxpython-and-threads/

我刚刚想到的另一种方法是使用套接字服务器或类似的服务器,并将您的数据发布到该服务器,然后让您的程序检查服务器是否有新数据。不过,对于这个用例来说,这相当复杂。

最新更新