为什么会出现菜单栏的延迟渲染(wxpython,matplotlib)?

时间:2012-11-05 11:01:39

标签: matplotlib wxpython

以下是我在网上找到的代码的链接(在wxpython中嵌入matplotlib): http://eli.thegreenplace.net/files/prog_code/wx_mpl_bars.py.txt

我的问题是,是否有人知道为什么菜单栏会出现延迟?有没有办法摆脱这种延迟?

谢谢!

1 个答案:

答案 0 :(得分:0)

阅读代码,问题可能是self.draw_figure()是罪魁祸首。 wx需要渲染帧,但只有在主线程(运行wx)被清除后才能执行。我的猜测是self.draw_figure()是一个计算量很大的方法调用并阻止了菜单栏的绘制。尝试使用wx.CallAfter(self.draw_figure)来释放线程。完成所有其他渲染后,将绘制图形。

PS:我没有安装wx 2.8(matplotlib需要),所以我无法验证这是否完全有效。