Виджет gtk TextView не обновляется во время работы - PullRequest
0 голосов
/ 23 февраля 2009

Я новичок в программировании GUI на python и gtk, так что это вопрос новичка. У меня есть функция, которая вызывается при нажатии кнопки, которая выполняет различные задачи, и виджет TextView, в который я пишу после выполнения каждой задачи. Проблема в том, что виджет TextView не обновляется, пока не завершится вся функция. Мне нужно его обновлять после каждой задачи.

1 Ответ

4 голосов
/ 23 февраля 2009

После каждого обновления вызова TextView

while gtk.events_pending():
  gtk.main_iteration()

Вы можете сделать свое обновление через пользовательскую функцию:

def my_insert(self, widget, report, text):

  report.insert_at_cursor(text)
  while gtk.events_pending():
    gtk.main_iteration()

Из FAQ по PyGTK: Как принудительно обновить окна приложения во время длительного обратного вызова или другой внутренней операции?

...