Tkinter сохраняя прокрутку текста при обновлении - PullRequest
0 голосов
/ 23 апреля 2020

У меня есть объект Tkinter Text, который используется для отображения некоторого текста. Этот текст быстро обновляется, например, строка может измениться с

manager.angry=True

на

manager.angry=False

Поскольку это своего рода монитор.

Этот монитор отслеживает состояния из многих переменных с течением времени, поэтому это очень длинный журнал. Поэтому необходимо иметь возможность прокручивать его.

В настоящее время я обновляю этот монитор следующим

self.delete(1.0, "end")
self.insert(tk.INSERT, text)
self.update_size(None)

, который по существу удаляет весь текст и заменяет его новым текстом. В действительности между ними может быть различие только в одно или два слова.

Проблема в том, что новый текст обычно имеет такое же количество строк, которое свиток сбрасывает, когда я делаю это. Что делает невозможным фактическую прокрутку.

Есть ли способ обновить текст без потери позиции прокрутки пользователя в объекте Text?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...