在循环上使用SetStringItem时,Wxpython textctrl缓慢

时间:2011-03-18 18:01:25

标签: python performance forms wxpython

在wxpython中,

要更新textCtrl小部件上的一系列项目,我正在使用:

for i in LARGELIST:
    list.SetStringItem(i, 1, str(a))

这很有效,但就像在excel宏中一样 - 如果你允许它在屏幕上显示每一个更新而不是禁用它并稍后刷新电子表格,它会变得迟钝 - 我发现每个单独的单元格的体验都很缓慢update触发刷新表单。

如何才能使循环结束时仅在屏幕上更新值?

非常感谢

1 个答案:

答案 0 :(得分:1)

使用:

window.Freeze()
for i in LARGELIST:
    list.SetStringItem(i, 1, str(a))
window.Thaw()

其中“window”是对窗口的引用