【问题标题】:wxPython textCtrl silent AppendTextwxPython textCtrl 静默 AppendText
【发布时间】:2012-02-22 09:24:58
【问题描述】:

我有一个文本(有几行)需要放在 wxPython TextCtrl 中。
问题是其中一些行带有不可打印的字符。

我的解决方案是使用 AppendText,并尝试捕捉有问题的行。

目前的问题是,对于大量的行,需要花费很多时间(相对于准备一个包含所有行的大字符串并使用SetValue)

有没有办法“静默”地将文本行附加到 TextCtrl(这样它就不会在每行之后重绘)?

【问题讨论】:

  • 为什么不删除/替换那些有问题的字符,然后使用 SetValue 呢?
  • 我不知道 TextCtrl 尝试使用的编码,我能弄清楚吗?

标签: python wxpython


【解决方案1】:

由于wxTextCtrl 派生自wxWindow,它继承了Freeze()Thaw() 方法。

Freeze() 将锁定控件的屏幕更新,Thaw() 将重新启用它们。该文档实际上提到了您的用例,尽管有一个警告:

此方法对于视觉外观优化很有用(例如, 在进行许多大文本插入之前使用它是个好主意 wxGTK 下的wxTextCtrl 中的一行),但并未在所有服务器上实现 平台也不是所有控件,所以它主要只是一个提示 wxWidgets 而不是强制性指令。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-08-31
    • 1970-01-01
    • 2016-03-26
    • 2010-11-17
    • 2023-03-11
    • 2011-07-12
    • 1970-01-01
    相关资源
    最近更新 更多