wxWidgets相当于PyTk的update_idletasks?

时间:2013-03-22 13:33:20

标签: tkinter wxwidgets

我正在将一个视频播放器从PyTk移植到wxWidgets。

我有一个单独的工作线程,每30分钟通过wx.PostEvent将事件推送到主应用程序(基于这些说明:http://wiki.wxpython.org/Non-Blocking%20Gui)。主app应该从视频文件中读取一个新帧并显示它。事件被正确接收和处理(通过调试语句确认),但屏幕上的实际图像不会更新。 GUI仅在工作线程终止后更新 - 因此我只能看到最后一帧。

我的框架读取和显示代码工作正常 - 我已经使用滑块测试了它。我无法弄清楚GUI没有更新的原因。

在PyTk中,有一个名为update_idletasks的方法强制重绘小部件。我有一种感觉,我需要在wxWidgets中做类似的事情 - 这是这种情况吗?如果是,那么替换update_idletasks的wxWidgets是什么?

1 个答案:

答案 0 :(得分:1)

我的猜测:这比wxWidgets更像是windows的东西。我想你可能需要告诉窗口管理器需要重新绘制包含视频帧的窗口。在该窗口上调用Refresh()或Invalidate()可能值得尝试。