简体   繁体   English

持续更新 PySimpleGUI window

[英]Continuously Updating PySimpleGUI window

I am creating a program in which i want to update values continuously after click start.我正在创建一个程序,我想在单击开始后连续更新值。

Until user clicks on Stop button i want values to keep updating直到用户点击停止按钮,我希望值不断更新

I use for loop for testing like我使用 for 循环进行测试,例如

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

Basically after the loop complete running it update the value directly last i value基本上在循环完成运行后它直接更新值最后 i 值

I also use time.sleep(0.1) to keep track of it but didn't work我还使用 time.sleep(0.1) 来跟踪它但没有用

Call window[-TEXT-].update(function()) won't update the GUI, how to update GUI?调用window[-TEXT-].update(function())不会更新 GUI,如何更新 GUI?

  • Loop to next window.read()循环到下一个window.read()
  • call window.Refresh() after it在它之后调用window.Refresh()

You can use option timeout of window.read to count it if it is periodic.如果它是周期性的,您可以使用window.read的选项timeout来计算它。

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()

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM