我正在使用 Pysimplegui 在执行事件后在 for 循环中输出一些文本。但是,当 for 循环结束时,我只能一次看到所有文本。当 for 循环运行时,我看不到它。gui 显示“没有响应”(但它正在运行)。知道如何解决这个问题吗?
当我有一个 for 循环并且在 for 循环中运行的事件需要时间来执行时,这似乎会发生。下面是我的代码。
import PySimpleGUI as sg
import time
def excecutetest(command):
for i in range(5):
print (command + str(i))
time.sleep(2)
layout = [
[sg.Text('Information:', size=(40, 1))],
[sg.Output(size=(88, 20))],
[sg.Text('Input:', size=(15, 1)), sg.InputText(focus=True), sg.Button('Run', bind_return_key=True)],
[sg.Button('EXIT')]
]
window = sg.Window('testing', layout)
# ---===--- Loop taking in user input and using it to call scripts --- #
while True:
(event, value) = window.Read()
if event == 'EXIT' or event is None:
break # exit button clicked
if event == 'Run':
excecutetest(value[0])
window.Close()
我希望窗口能够实时输出每个 for 循环。谢谢你。