我想在开始耗时的操作(将几兆字节的文本加载到TextBuffer中)之前修改PyGTK应用程序中某些标签的文本。但是当我尝试这样做时,标签更新直到TextBuffer开始加载文件(文本出现在查看器中)之后才会发生,这需要几秒钟,在此期间程序似乎已经冻结。为了我的用户,我想在开始加载文件之前显示这些消息,其编码顺序与我的代码相同。我怎样才能做到这一点?有没有办法让我的程序等待gobject主循环中待处理事件的执行? (这是我假设调用gtk.Label.set_text的地方)
答案 0 :(得分:1)
这会强制刷新屏幕:
## force the refresh of the screen
while gtk.events_pending():
gtk.main_iteration()