如何在wx.TextCtrl中使用Freeze()和Thaw()函数?

时间:2016-07-14 12:48:04

标签: wxpython wxwidgets

我正在使用此代码:

self.output = wx.TextCtrl(panel, -1, "", style=wx.TE_RICH2 |
                              wx.TE_MULTILINE |
                              wx.TE_READONLY  |
                              wx.TE_NOHIDESEL |
                              wx.TE_AUTO_URL)

问题是:

self.output对象正在不断更新,屏幕每次都在下降。我无法读取第一行。如果向上滚动读取行,那时self.output对象被更新,那个窗口屏幕就会关闭。 附上屏幕截图。window

需要解决方案:

我将创建一个按钮。当单击按钮窗口时,如果self.output对象也更新,则不要关闭(意味着文本可以在窗口上更新,但不能关闭)。如果未选中out.output对象获取更新时间时,可以关闭按钮窗口。

我知道通过使用freeze()和Thaw()函数,我可以限制该功能。我尝试了不同的方法,它不能帮助我。

如果有任何解决方案,请提前感谢。谢谢。

1 个答案:

答案 0 :(得分:0)

最佳猜测:您正在某处调用SetValue,因此生成一个事件。使用ChangeValue代替更改文字而不生成事件。