функция вывода на печать в реальном времени GUI - PullRequest
0 голосов
/ 20 мая 2019

мой вопрос почти такой же: Запуск процесса с выводом в реальном времени в графический интерфейс Tkinter

У меня есть пример кода для печати в графический интерфейс (в реальном времени), но он появляетсясразу же и заставляет мое приложение заморозить.Я попытался изменить маленький код, полученный из ответа на поставленный выше вопрос, в соответствии с функцией, которую я хотел отобразить, но это не сработало.

Я новичок в Python, я пытался найти ответ и в основном использую многопоточность и popen.

from tkinter import *
from d2v import output

root=Tk()
textbox=Text(root)
textbox.pack()
button1=Button(root, text='output', command=lambda : output().output_res())
button1.pack()

def decorator(func):
    def inner(inputStr):
        try:
            textbox.insert(INSERT, inputStr)
            return func(inputStr)
        except:
            return func(inputStr)
    return inner

sys.stdout.write=decorator(sys.stdout.write)

root.mainloop()

вот функция для печати:

import sys, time
class output:
    def output_res(self):
        for i in range(10):
           print(i)
           sys.stdout.flush()
           time.sleep(0.5)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...