Как у меня есть цикл while, который редактирует список, работающий в то же время, что и основной цикл tkinter? - PullRequest
0 голосов
/ 26 сентября 2019

У меня есть некоторый код, работающий в цикле while, который обновляет список при необходимости:

while True:
    try:
        listbox.insert(1,"hello world")
    except:
        pass

Я хочу запустить root.mainloop() вместе с этим, чтобы окно оставалось на экране.

Я пытался использовать root.after(0,task), но это ничего не сделало.root.update() оставляет меня с окном, которое постоянно заморожено и не отвечает.Я не могу запустить цикл while в потоке, потому что код должен быть в основном потоке (я думаю, он просто не работает, если не в основном потоке).

Любые идеи?

РЕДАКТИРОВАТЬ:

def task():
    try:
        listbox.insert(1,"hello world")
    except:
        pass
    root.after(0,task)
root.mainloop()



def task(root):
    try:
        listbox.insert(1,"hello world")
    except:
        pass
    root.update()
while 1:
    task(root)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...