python 持续更新PySimpleGUI窗口

fnatzsnv  于 2023-08-02  发布在  Python
关注(0)|答案(1)|浏览(194)

我正在创建一个程序,我想在单击“开始”后不断更新其中的值。
在用户单击“停止”按钮之前,我希望值保持更新
我使用for循环来测试

for i in range(1000):
        window[-TEXT-].update(function())

字符串
基本上在循环完成运行后它直接更新last i的值
我也使用time.sleep(0.1)来跟踪它,但没有用

bakd9h0s

bakd9h0s1#

调用window[-TEXT-].update(function())不会更新GUI,如何更新GUI?

  • 循环到下一个window.read(),或
  • 调用window.Refresh()

如果它是周期性的,可以使用window.readtimeout选项来计数。

count = 1000

while True:

    event, values = window.read(timeout=20)     # 20ms

    if event in (sg.WINDOW_CLOSED, 'Exit'):
        break

    elif event == sg.TIMEOUT_EVENT and count:
        window[-TEXT-].update(function())
        count -= 1

window.close()

字符串

相关问题